Error After Upgrading Php From 5.2 To 5.3

In the middle of the day my cart started getting the following error:



Strict Standards: Declaration of Templater::display() should be compatible with Smarty::display($resource_name, $cache_id = NULL, $compile_id = NULL) in /home/earthsli/public_html/shop/core/class.templater.php on line 24



I am on 2.2.4 Pro and understand this is not compatible with PHP 5.4, but I am on 5.3 now. I was on 5.2 until last week when I was informed that version of PHP created a security problem. I can go back to 5.2 but am concerned about security risks.



There is no reference to PHP in my .htaccess file.



Tried adding



AddHandler application/x-httpd-php53 .php .php5 .php4 .php3



to .htaccess and that then created a download box to come up on the pages when I refreshed. Shown in attached image.



Any help appreciated.

Download.JPG

Well, you can supress the warning by adjusting the error_reporting($err_value) $err_val parameter to use:


// Disable notices displaying
error_reporting(E_ALL ^ E_NOTICE);
if (version_compare(PHP_VERSION, '5.3.0', '>=')) {
error_reporting(error_reporting() & ~E_DEPRECATED & ~E_STRICT);
}


in your config.local.php. However, 2.2…x is not really compatible with PHP 5.3 as you've seen.

[quote name='tbirnseth' timestamp='1408247832' post='189732']

Well, you can supress the warning by adjusting the error_reporting($err_value) $err_val parameter to use:


// Disable notices displaying
error_reporting(E_ALL ^ E_NOTICE);
if (version_compare(PHP_VERSION, '5.3.0', '>=')) {
error_reporting(error_reporting() & ~E_DEPRECATED & ~E_STRICT);
}


in your config.local.php. However, 2.2…x is not really compatible with PHP 5.3 as you've seen.

[/quote]



Thanks for this. I tried that and the new code then also appears on the shop home page. Sent you a message via your website contact form re: more help to resolve this.

I'm running PHP 5.3.28 on 2.2.5 without issue.



I did a comparison on /config.local.php between 2.2.4 & 2.2.5 and the only difference was:



2.2.4

error_reporting(error_reporting() & ~E_DEPRECATED);



2.2.5

error_reporting(error_reporting() & ~E_DEPRECATED & ~E_STRICT);



There could be other instances that are not compatible.? My suggestion would be to upgrade to 2.2.5. It should be painless since it is just a minor upgrade.

Thank you all for the help. Problem resolved using PHP 5.4.31.