Server IP : 192.158.238.246 / Your IP : 3.135.215.148 Web Server : LiteSpeed System : Linux uniform.iwebfusion.net 4.18.0-553.27.1.lve.1.el8.x86_64 #1 SMP Wed Nov 20 15:58:00 UTC 2024 x86_64 User : jenniferflocom ( 1321) PHP Version : 8.1.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /opt/cpanel/ea-php80/root/usr/share/tests/pecl/igbinary/tests/ |
Upload File : |
--TEST-- APCu serializer registration - more data types --INI-- apc.enable_cli=1 apc.serializer=igbinary --SKIPIF-- <?php if (!extension_loaded('apcu')) { echo "skip APCu not loaded"; return; } $ext = new ReflectionExtension('apcu'); if (version_compare($ext->getVersion(), '5.1.6') < 0) { echo "skip require APCu version 5.1.6 or above"; return; } ?> --FILE-- <?php echo ini_get('apc.serializer'), "\n"; class Bar { public $foo; } $a = new Bar; $a->foo = $a; apcu_store('objloop', $a); unset($a); var_dump(apcu_fetch('objloop')); apcu_store('nullval', null); var_dump(apcu_fetch('nullval')); apcu_store('intval', 777); var_dump(apcu_fetch('intval')); $o = new stdClass(); $o->prop = 5; $a = [$o, $o]; apcu_store('simplearrayval', $a); $unserialized = apcu_fetch('simplearrayval'); var_dump($unserialized); if ($unserialized[0] === $unserialized[1]) { echo "SAME\n"; } else { echo "DIFFERENT\n"; printf("%s\n", bin2hex(igbinary_serialize($a))); } unset($o); unset($a); unset($unserialized); $o = new stdClass(); $o->prop = 6; $a = [&$o, &$o]; apcu_store('refarrayval', $a); $unserialized = apcu_fetch('refarrayval'); var_dump($unserialized); if ($unserialized[0] === $unserialized[1]) { echo "SAME\n"; } else { echo "DIFFERENT\n"; printf("%s\n", bin2hex(igbinary_serialize($a))); } ?> --EXPECTF-- igbinary object(Bar)#%d (1) { ["foo"]=> *RECURSION* } NULL int(777) array(2) { [0]=> object(stdClass)#%d (1) { ["prop"]=> int(5) } [1]=> object(stdClass)#%d (1) { ["prop"]=> int(5) } } SAME array(2) { [0]=> &object(stdClass)#%d (1) { ["prop"]=> int(6) } [1]=> &object(stdClass)#%d (1) { ["prop"]=> int(6) } } SAME