I just received the following PHP error.
Fatal error: Can’t use function return value in write context in /path/to/file.php on line 595
And I had no fucking idea what the problem was. I had a “sense” of it, but I didn’t understand the “in write context” part (that’s what happens when you get geeks to write error messages).
The line causing the error was this:
if (strtolower($append_value) = strtolower($base_value))
It’s one of those classic programmer errors that is in your face but is easily lost in the code.
Here’s the fixed line
if (strtolower($append_value) == strtolower($base_value))
Yeap – I missed an equals sign to make it an equality expression rather than an assignment (i.e. “=” changed to “==”).
Interestingly, this error was thrown without actually being executed. It must have been while the script was being parsed. I’m using PHP 7.3 in WordPress in the Codeanywhere online IDE.