3v4l.org

run code in 300+ PHP versions simultaneously
<?php class A { protected $_sqlStatements = []; public function __sleep() { var_dump((array) ($this)); var_dump(get_object_vars($this)); } } class B extends A { private $x = 42; } var_dump(serialize(new B));
Output for 8.1.0 - 8.1.34, 8.2.0 - 8.2.30, 8.3.0 - 8.3.30, 8.4.1 - 8.4.14, 8.4.16 - 8.4.18, 8.5.0 - 8.5.3
array(2) { ["*_sqlStatements"]=> array(0) { } ["Bx"]=> int(42) } array(1) { ["_sqlStatements"]=> array(0) { } } Warning: serialize(): B::__sleep() should return an array only containing the names of instance-variables to serialize in /in/ce10i on line 18 string(2) "N;"
Output for 8.4.15
/bin/php-8.4.15: /usr/lib/libm.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libm.so.6: version `GLIBC_2.35' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libc.so.6: version `GLIBC_2.34' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libc.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.4.15)
Process exited with code 1.
Output for 8.0.1 - 8.0.30
array(2) { ["Bx"]=> int(42) ["*_sqlStatements"]=> array(0) { } } array(1) { ["_sqlStatements"]=> array(0) { } } Warning: serialize(): B::__sleep() should return an array only containing the names of instance-variables to serialize in /in/ce10i on line 18 string(2) "N;"

preferences:
96.29 ms | 409 KiB | 5 Q