3v4l.org

run code in 300+ PHP versions simultaneously
<?php // Testing shutdown sequence function checkSqlite() { if (!$GLOBALS['pdo']) echo "PDO connection\n"; } $pdo = new PDO('sqlite:memory'); function shutdown() { checkSqlite(); echo "register_shutdown_function\n"; } register_shutdown_function('shutdown'); class MyClass { function __destruct() { checkSqlite(); echo "Object destructor\n"; } } function obcallback($buffer) { checkSqlite(); $buffer .= "Output buffer callback\n"; return $buffer; } ob_start('obcallback'); $myObject = new MyClass; function dummy() { return true; } function sessionclose() { checkSqlite(); echo "Session close\n"; return true; } function sessionwrite() { checkSqlite(); echo "Session write\n"; return true; } session_set_save_handler('dummy','sessionclose','dummy','sessionwrite','dummy','dummy'); session_start(); ?>
Output for git.master, git.master_jit, rfc.property-hooks
Fatal error: Uncaught PDOException: PDO::__construct(): open_basedir restriction in effect. File(/memory) is not within the allowed path(s): (/tmp:/in:/etc) in /in/mcl9B:10 Stack trace: #0 /in/mcl9B(10): PDO->__construct('sqlite:memory') #1 {main} Next PDOException: open_basedir prohibits opening memory in /in/mcl9B:10 Stack trace: #0 /in/mcl9B(10): PDO->__construct('sqlite:memory') #1 {main} thrown in /in/mcl9B on line 10
Process exited with code 255.

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
45.69 ms | 402 KiB | 8 Q