3v4l.org

run code in 300+ PHP versions simultaneously
<?php class MyModelException extends Exception { public static function brokenData(MyModel $myModel) { $exception = new static('Wrong data of some_data in persistent storage: ' . $myModel->some_data . PHP_EOL . 'Serialized object of model:' . serialize($myModel) ); //Log::warning($exception->getMessage()); return $exception; } } class MyModel { public $some_data; } $myBrokenModel = new MyModel; $myBrokenModel->some_data = 'data is broken'; try { throw MyModelException::brokenData($myBrokenModel); } catch(Exception $e) { var_dump ($e); }
Output for 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.25, 8.4.1 - 8.4.12
object(MyModelException)#2 (7) { ["message":protected]=> string(145) "Wrong data of some_data in persistent storage: data is broken Serialized object of model:O:7:"MyModel":1:{s:9:"some_data";s:14:"data is broken";}" ["string":"Exception":private]=> string(0) "" ["code":protected]=> int(0) ["file":protected]=> string(9) "/in/sdGDg" ["line":protected]=> int(7) ["trace":"Exception":private]=> array(1) { [0]=> array(6) { ["file"]=> string(9) "/in/sdGDg" ["line"]=> int(29) ["function"]=> string(10) "brokenData" ["class"]=> string(16) "MyModelException" ["type"]=> string(2) "::" ["args"]=> array(1) { [0]=> object(MyModel)#1 (1) { ["some_data"]=> string(14) "data is broken" } } } } ["previous":"Exception":private]=> NULL }

preferences:
150.41 ms | 410 KiB | 5 Q