3v4l.org

run code in 300+ PHP versions simultaneously
<?php class dumpy { function __construct() { echo 'constructor called,' . PHP_EOL . ' my class is ' . var_export(get_class($this), true) . PHP_EOL . ' input parameters: ' . var_export(func_get_args(), true) . PHP_EOL; } function __set($name, $value) { echo var_export($name, true) . ' = ' . var_export($value, true) . PHP_EOL; } } class dummy extends dumpy { } $dsn = 'sqlite::memory:'; $pdo = method_exists('PDO', 'connect') ? PDO::connect($dsn) : new PDO($dsn); $sql = "SELECT 'dummy' pdoFetchClassTypeClass, 'bar' foo, 'dfg' abc;"; foreach (array( array('PDO::FETCH_CLASS'), array('PDO::FETCH_CLASS', 'PDO::FETCH_PROPS_LATE'), array('PDO::FETCH_CLASS', 'PDO::FETCH_CLASSTYPE'), array('PDO::FETCH_CLASS', 'PDO::FETCH_CLASSTYPE', 'PDO::FETCH_PROPS_LATE'), ) as $fetchMode) { $fetchModeInt = 0; foreach (array_map('constant', $fetchMode) as $i) { $fetchModeInt |= $i; } echo '## ' . implode(' | ' , $fetchMode) . " ($fetchModeInt)" . PHP_EOL; $pdo->query($sql)->fetchAll( $fetchModeInt, 'dumpy', array('constructor argument #1') ); echo PHP_EOL; }
Output for git.master, git.master_jit
## PDO::FETCH_CLASS (8) 'pdoFetchClassTypeClass' = 'dummy' 'foo' = 'bar' 'abc' = 'dfg' constructor called, my class is 'dumpy' input parameters: array ( 0 => 'constructor argument #1', ) ## PDO::FETCH_CLASS | PDO::FETCH_PROPS_LATE (264) constructor called, my class is 'dumpy' input parameters: array ( 0 => 'constructor argument #1', ) 'pdoFetchClassTypeClass' = 'dummy' 'foo' = 'bar' 'abc' = 'dfg' ## PDO::FETCH_CLASS | PDO::FETCH_CLASSTYPE (136) 'foo' = 'bar' 'abc' = 'dfg' constructor called, my class is 'dummy' input parameters: array ( ) ## PDO::FETCH_CLASS | PDO::FETCH_CLASSTYPE | PDO::FETCH_PROPS_LATE (392) constructor called, my class is 'dummy' input parameters: array ( ) 'foo' = 'bar' 'abc' = 'dfg'
Output for rfc.property-hooks
## PDO::FETCH_CLASS (8) 'pdoFetchClassTypeClass' = 'dummy' 'foo' = 'bar' 'abc' = 'dfg' constructor called, my class is 'dumpy' input parameters: array ( 0 => 'constructor argument #1', ) ## PDO::FETCH_CLASS | PDO::FETCH_PROPS_LATE (1048584) constructor called, my class is 'dumpy' input parameters: array ( 0 => 'constructor argument #1', ) 'pdoFetchClassTypeClass' = 'dummy' 'foo' = 'bar' 'abc' = 'dfg' ## PDO::FETCH_CLASS | PDO::FETCH_CLASSTYPE (262152) 'foo' = 'bar' 'abc' = 'dfg' constructor called, my class is 'dummy' input parameters: array ( 0 => 'constructor argument #1', ) ## PDO::FETCH_CLASS | PDO::FETCH_CLASSTYPE | PDO::FETCH_PROPS_LATE (1310728) constructor called, my class is 'dummy' input parameters: array ( 0 => 'constructor argument #1', ) 'foo' = 'bar' 'abc' = 'dfg'

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:
27.23 ms | 409 KiB | 5 Q