3v4l.org

run code in 300+ PHP versions simultaneously
<?php $x = 4; if($x == 1){ class X{} session_start(); $_SESSION["x"] = new X(); $_SESSION["y"] = "5"; echo session_encode(); // x|O:1:"X":0:{}y|s:1:"5"; } elseif($x == 2){ session_start(); session_decode('x|O:1:"X":0:{}y|s:1:"5";'); $_SESSION["y"] = 6; echo session_encode(); die(); print_r($_SESSION); /* Array ( [x] => __PHP_Incomplete_Class Object ( [__PHP_Incomplete_Class_Name] => X ) [y] => 5 ) */ } elseif($x == 3){ enum Y{ case Y; } session_start(); $_SESSION["x"] = Y::Y; $_SESSION["y"] = "5"; echo session_encode(); // x|E:3:"Y:Y";y|s:1:"5"; } elseif($x == 4){ session_start(); session_decode('x|E:3:"Y:Y";y|s:1:"5";'); print_r($_SESSION); /* Warning: session_decode(): Class 'Y' not found in /in/1IEIF on line 36 Warning: session_decode(): Failed to decode session object. Session has been destroyed in /in/1IEIF on line 36 Array ( ) */ }
Output for 8.2.0 - 8.2.29, 8.3.0 - 8.3.25, 8.4.1 - 8.4.12
Warning: session_decode(): Class 'Y' not found in /in/mLGPa on line 39 Warning: session_decode(): Failed to decode session object. Session has been destroyed in /in/mLGPa on line 39 Array ( )

preferences:
55.2 ms | 406 KiB | 5 Q