Am 02.12.2021 um 16:19 schrieb Sara Golemon <poll...@php.net>:
> I would say that such applications should consider unifying their own
> types.  $a = $_GET['q'] ?? '';   Is there a place in the application where
> empty string and null would have been distinct? i.e. Is a search for
> nothing different from not searching?

Being able to detect if a parameter was present and empty or it it was not 
present at all can be useful. That is the whole point of null, even though some 
people dislike null :-)

In fact we ran into the same problem and are silencing certain notices, 
warnings and deprecations because they get in the way of our code base. 
(Side-note: We are patching it instead of suppressing it in an error handler as 
we saw a noticeable performance difference.)

For the curious, here is our patch:
        perl -0777 -i.bak -pe 
's#zend_error.*E_(NOTICE|WARNING|DEPRECATED).*(\n.*)?(Undefined|Attempt to read 
property|Uninitialized string offset|Trying to access array offset on value of 
type|Passing null to parameter)#if (0) $&#g; s#zend_type_error.*must be of type 
Countable#if(0) $&#g' Zend/*.[ch] ext/spl/*.[ch] ext/opcache/jit/*.[ch]

I am *not* advocating that other people should do this, I'm just corroborating 
;-)

Regards,
- Chris

Reply via email to