3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Example { public function yearManufactured() { return true; } public function make() { return false; } public function model() { return true; } public function evaluateExpressionArray(array $expression) { $expr = '$result ='; foreach ($expression as $part) { if ($part == '||' || $part == '&&') { $expr .= " $part "; } elseif (method_exists($this, $part)) { $expr .= $this->$part() ? 'true' : 'false'; } else { return null; } } echo $expr; try { eval("$expr;"); } catch (ParseError $e) { return null; } return $result; } } $ex = new Example(); $result = $ex->evaluateExpressionArray(array( 'yearManufactured', '&&', 'make', '||', '||', 'model' )); var_dump($result);
Output for git.master_jit, git.master, rfc.property-hooks
$result =true && false || || trueNULL

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