LogicException with eaccelerator PHP extension

In case if you encounter the following error reported in debug logs:

Fatal error: Uncaught exception ‘LogicException’ with message
‘Illegal value passed (no array or string given)’ in …

this is probably caused by eAccelerator PHP extension which sometimes doesn’t let perfectly valid PHP syntax through.

The issue doesn’t seem to be specific to our product (see this example).

Currently, known solutions are:

1) disable this extension, either globally or for particular virtual host.

2) in your php.ini, supply the following in eaccelerator section:

eaccelerator.optimizer = “0”