Today I learnt e.preventDefault stops checkbox from being checked....why didn't I know that?
Today I learned
TIL (okay, a couple days ago) that there is a json_agg()
function in PostgreSQL.
SELECT
r.review_id,
r.review_timestamp,
json_agg(a.*) AS answers
FROM $schema.review r
INNER JOIN $schema.answer a ON a.review_id = r.review_id
WHERE -- stuff
GROUP BY review_id, review_timestamp
Now I get just one row returned for each relevant review, and each row contains a JSON string with all the answers associated with that review.
- Edited
$schema.answer
Not sure why my brain is expecting a ? or :schema.answer there
cluelessPHP Not sure why my brain is expecting a ? or :schema.answer there
We use Postgres's "schemas" to separate each client's data -- functionally similar to having them each in their own database, except they're not. That query was actually extracted from the PHP code that builds the query (and simplified and anonymized here), so
$schema
would actually be replaced with the relevant schema name for the client being processed, e.g FROM client_foo.review r
, and then processed with $pdo->prepare()
.
Today I learned Sean Connery died
cluelessPHP
This saddened me a bit. Watched "You Only Live Twice" and "Thunderball" this weekend in his honor. Wish I had a copy of "Robin and Marian", the chemistry he had with Audrey Hepburn was amazing. And I might be a fan indeed as I don't even hate Zardoz TOO much.
Finally, pretty good compilation of the early Bond themes: https://youtu.be/J4jdUhxOz0M
dalecosp I watched Highlander
dalecosp
I still like his turn in "The Name of the Rose".
Today I learned that I'm not the only person who has seen Zardoz. That movie is awesomely crap-tastic. https://www.youtube.com/watch?v=AfuK_KJTRyg
"The gun is good" --- family motto. ;-)
dalecosp you might not like what else ol' Zardoz has to say...
TIL that the film 'Lawrence of Arabia' had its world premiere 10 years closer to the start of the Great War than to the current day.
dalecosp and Rampling, for all her modern foibles, was something to behold.
TIL that returning false
works if you declare return type int:
function foo() : int {
return false;
}
var_dump(foo());
the result:
int(0)
but returning NULL
from an int function throws an exception:
function foo() : int {
return null;
}
var_dump(foo());
the result:
PHP Fatal error: Uncaught TypeError: Return value of foo() must be of the type integer, null returned in /tmp/a.php:3
Stack trace:
#0 /tmp/a.php(5): foo()
#1 {main}
thrown in /tmp/a.php on line 3
- Edited
You'll also get that if you try to return a non-numeric string (a numeric string would be recast).
Also, attempting to return anything other than an int fail if you declare(strict_types=1);
.
Returning null is hazardous, and equivalent to returning nothing at all (return null;
is identical in meaning to return;
; if a function is supposed to return a value, return;
looks wrong). If for some reason you do want nulls hanging around, you can declare the possibility as function foo(): ?int
.
Today I learned Mira Furlan is dead, this year sucks let's go to 2022
TIL that the U.S. Government website for reporting online crime does not work:
curl -v https://www.ic3.gov/complaint/default.aspx
* Trying 65.201.175.169:443...
* TCP_NODELAY set
* Trying 2600:803:c20::3:16:443...
* TCP_NODELAY set
* Immediate connect fail for 2600:803:c20::3:16: Network is unreachable
* Trying 2600:803:c20::3:15:443...
* TCP_NODELAY set
* Immediate connect fail for 2600:803:c20::3:15: Network is unreachable
* Trying 2600:803:c20::3:16:443...
* TCP_NODELAY set
* Immediate connect fail for 2600:803:c20::3:16: Network is unreachable
* Trying 2600:803:c20::3:15:443...
* TCP_NODELAY set
* Immediate connect fail for 2600:803:c20::3:15: Network is unreachable
- Edited
Today I learned PHP filters. I really enjoy the PHP language while I am learning it.