3v4l.org

run code in 300+ PHP versions simultaneously
<?php function fpc($filename, $data) { // open file pointer, init flock options $fp = fopen($filename, 'w'); $retries = 0; $max_retries = 100; if (!$fp) { return false; } // loop until get lock, or reach max retries do { if ($retries > 0) { usleep(rand(1, 5000)); } $retries += 1; } while (!flock($fp, LOCK_EX) && $retries <= $max_retries); // couldn't get the lock if ($retries == $max_retries) { return false; } // got lock, write data fwrite($fp, $data); // release lock flock($fp, LOCK_UN); fclose($fp); return true; }
Output for git.master, git.master_jit, rfc.property-hooks

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:
53.53 ms | 405 KiB | 5 Q