3v4l.org

run code in 300+ PHP versions simultaneously
<?php $file = new SplTempFileObject(); for ($i = 0; $i < 100; $i++) { $file->fwrite("Foo $i\n"); } $file->rewind(); $nextBefore = []; while ($file->valid() && $file->key() <= 3) { $file->next(); $line = $file->current(); $nextBefore[$file->key()] = trim($line); } $file->rewind(); $nextAfter = []; while ($file->valid() && $file->key() <= 3) { $line = $file->current(); $nextAfter[$file->key()] = trim($line); $file->next(); } $file->rewind(); $fgets = []; while ($file->valid() && $file->key() <= 3) { $line = $file->fgets(); $fgets[$file->key()] = trim($line); } echo "-- Next Before --\n"; print_r($nextBefore) . PHP_EOL; echo "-- Next After --\n"; print_r($nextAfter) . PHP_EOL; echo "-- fgets --\n"; print_r($fgets) . PHP_EOL;
Output for git.master, git.master_jit, rfc.property-hooks
-- Next Before -- Array ( [1] => Foo 0 [2] => Foo 1 [3] => Foo 2 [4] => Foo 3 ) -- Next After -- Array ( [0] => Foo 0 [1] => Foo 1 [2] => Foo 2 [3] => Foo 3 ) -- fgets -- Array ( [1] => Foo 0 [2] => Foo 1 [3] => Foo 2 [4] => Foo 3 )

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:
111.79 ms | 406 KiB | 5 Q