PHP 7.0 gave return types and no way to say a method might legitimately return nothing, so anything that could miss simply went untyped. 7.1 adds a leading…
Modern cryptography in PHP has meant either openssl with a lot of decisions to get wrong, or a PECL extension nobody had. 7.2 puts libsodium in core, with…
An email assembled in a controller — subject here, view there, attachments in a third place — cannot be tested without sending it, and the subject line ends…
A method that exists for its effect has always returned null implicitly, which means a caller assigning its result gets something rather than an error. void makes the…
A provider that builds its cases from something created in setUp() fails with a null, because every provider in the class runs before any test does — including…
Destructuring only worked positionally, so a row fetched as an associative array had to be unpacked by hand — three assignments and a typo waiting to happen. A…
A scheduled task that occasionally runs longer than its interval will be started again while the first is still going, which for an import means two processes writing…