3v4l.org

run code in 300+ PHP versions simultaneously
<?php function isCorrect($string) { $len = strlen($string); $stack = array(); for( $i = 0; $i < $len; ++$i) { if ( $string[$i] == '(' || $string[$i] == '{' || $string[$i] == '[') array_push($stack, $string[$i]); elseif( $string[$i] == ')' || $string[$i] == '}' || $string[$i] == ']') { if ( empty($stack) === false ) array_pop($stack); else return false; } } return empty($stack); } assert(isCorrect('') === true); assert(isCorrect('()') === true); assert(isCorrect('{()}') === true); assert(isCorrect('{()}{}') === true); assert(isCorrect('(())') === true); assert(isCorrect('{({({({()})})})}') === true); assert(isCorrect('{(})') === false);
Output for git.master, git.master_jit, rfc.property-hooks
Fatal error: Uncaught AssertionError: assert(isCorrect('{(})') === false) in /in/ZOU55:24 Stack trace: #0 /in/ZOU55(24): assert(false, 'assert(isCorrec...') #1 {main} thrown in /in/ZOU55 on line 24
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:
44.48 ms | 401 KiB | 8 Q