fix PHP 5.3 incompatibility issues