So let me break it.
ord("\xC0");
That 192. With or without strict types. Breakdown occurs here.
chr(ord("\xE9") / 64)
Now it ord("\xE9") / 64works up to 3.640625, and we can see where it breaks here
var_dump(ord(chr(3.640625)));
It is 0with strict types and 3without. Per manual forchr
string chr ( int $ascii )
, float, int. , , float int, 0
TypeError. , , .
. PHP,
var_dump(ord(chr('bob'))); // string 0, in all PHP versions