3v4l.org

run code in 300+ PHP versions simultaneously
<?php $tests = [ "40", // minage=40, maxage=40 "-40", // minage=null, maxage=40 "40-", // minage=40, maxage=null "40-60", // minage=40, maxage=60 "0", // minage=0, maxage=0 "-0", // minage=null, maxage=0 "0-", // minage=0, maxage=null "0-0" // minage=0, maxage=0 ]; foreach($tests as $str) { $minrange = null; $maxrange = null; $parts = explode('-', $str); switch (count($parts)) { case 1: $minrange = $maxrange = intval($parts[0]); break; case 2: $minrange = $parts[0] == "" ? null : intval($parts[0]); $maxrange = $parts[1] == "" ? null : intval($parts[1]); break; } var_export(compact(['minrange', 'maxrange'])); }
Output for git.master, git.master_jit, rfc.property-hooks
array ( 'minrange' => 40, 'maxrange' => 40, )array ( 'minrange' => NULL, 'maxrange' => 40, )array ( 'minrange' => 40, 'maxrange' => NULL, )array ( 'minrange' => 40, 'maxrange' => 60, )array ( 'minrange' => 0, 'maxrange' => 0, )array ( 'minrange' => NULL, 'maxrange' => 0, )array ( 'minrange' => 0, 'maxrange' => NULL, )array ( 'minrange' => 0, 'maxrange' => 0, )

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