3v4l.org

run code in 300+ PHP versions simultaneously
<?php class X { private $y = null; public function __construct($y=null) { $this->y = (int)$y; } } function evilSearch($obj, $p=-2147483648, $q=2147483647, $max = 32, $c = 0) { if($c>$max) { return null; } $class = get_class($obj); $r = (int)(($p+$q)/2); $z = new $class($r); if($z>$obj) { return evilSearch($obj, $p, $r, $max, $c+1); } if($z<$obj) { return evilSearch($obj, $r, $q, $max, $c+1); } return $r; } echo('<pre>'); $test = new X(mt_rand()); var_dump(evilSearch($test), $test);
Output for 7.4.0
<pre>int(1488829121) object(X)#1 (1) { ["y":"X":private]=> int(1488829121) }
Output for 7.3.12
<pre>int(648477065) object(X)#1 (1) { ["y":"X":private]=> int(648477065) }
Output for 7.3.11
<pre>int(1176557603) object(X)#1 (1) { ["y":"X":private]=> int(1176557603) }
Output for 7.3.10
<pre>int(217445886) object(X)#1 (1) { ["y":"X":private]=> int(217445886) }
Output for 7.3.9
<pre>int(610004708) object(X)#1 (1) { ["y":"X":private]=> int(610004708) }
Output for 7.3.8
<pre>int(517532274) object(X)#1 (1) { ["y":"X":private]=> int(517532274) }
Output for 7.3.7
<pre>int(1385053472) object(X)#1 (1) { ["y":"X":private]=> int(1385053472) }
Output for 7.3.6
<pre>int(1334703294) object(X)#1 (1) { ["y":"X":private]=> int(1334703294) }
Output for 7.3.5
<pre>int(630436739) object(X)#1 (1) { ["y":"X":private]=> int(630436739) }
Output for 7.3.4
<pre>int(263233419) object(X)#1 (1) { ["y":"X":private]=> int(263233419) }
Output for 7.3.3
<pre>int(1707526872) object(X)#1 (1) { ["y":"X":private]=> int(1707526872) }
Output for 7.3.2
<pre>int(2045958280) object(X)#1 (1) { ["y":"X":private]=> int(2045958280) }
Output for 7.3.1
<pre>int(729653248) object(X)#1 (1) { ["y":"X":private]=> int(729653248) }
Output for 7.3.0
<pre>int(918804609) object(X)#1 (1) { ["y":"X":private]=> int(918804609) }
Output for 7.2.25
<pre>int(200542938) object(X)#1 (1) { ["y":"X":private]=> int(200542938) }
Output for 7.2.24
<pre>int(709352136) object(X)#1 (1) { ["y":"X":private]=> int(709352136) }
Output for 7.2.23
<pre>int(1778277136) object(X)#1 (1) { ["y":"X":private]=> int(1778277136) }
Output for 7.2.22
<pre>int(18298839) object(X)#1 (1) { ["y":"X":private]=> int(18298839) }
Output for 7.2.21
<pre>int(677848391) object(X)#1 (1) { ["y":"X":private]=> int(677848391) }
Output for 7.2.20
<pre>int(1747666993) object(X)#1 (1) { ["y":"X":private]=> int(1747666993) }
Output for 7.2.19
<pre>int(778608974) object(X)#1 (1) { ["y":"X":private]=> int(778608974) }
Output for 7.2.18
<pre>int(348469402) object(X)#1 (1) { ["y":"X":private]=> int(348469402) }
Output for 7.2.17
<pre>int(652841389) object(X)#1 (1) { ["y":"X":private]=> int(652841389) }
Output for 7.2.0
<pre>int(491463952) object(X)#1 (1) { ["y":"X":private]=> int(491463952) }
Output for 7.1.33
<pre>int(389522191) object(X)#1 (1) { ["y":"X":private]=> int(389522191) }
Output for 7.1.32
<pre>int(1265946158) object(X)#1 (1) { ["y":"X":private]=> int(1265946158) }
Output for 7.1.31
<pre>int(1360892160) object(X)#1 (1) { ["y":"X":private]=> int(1360892160) }
Output for 7.1.30
<pre>int(1063541370) object(X)#1 (1) { ["y":"X":private]=> int(1063541370) }
Output for 7.1.29
<pre>int(1708871642) object(X)#1 (1) { ["y":"X":private]=> int(1708871642) }
Output for 7.1.28
<pre>int(1411753231) object(X)#1 (1) { ["y":"X":private]=> int(1411753231) }
Output for 7.1.27
<pre>int(1578447354) object(X)#1 (1) { ["y":"X":private]=> int(1578447354) }
Output for 7.1.26
<pre>int(1801902536) object(X)#1 (1) { ["y":"X":private]=> int(1801902536) }
Output for 7.1.7
<pre>int(1938730174) object(X)#1 (1) { ["y":"X":private]=> int(1938730174) }
Output for 7.1.6
<pre>int(651173136) object(X)#1 (1) { ["y":"X":private]=> int(651173136) }
Output for 7.1.5
<pre>int(1863685963) object(X)#1 (1) { ["y":"X":private]=> int(1863685963) }
Output for 7.1.0
<pre>int(1888267830) object(X)#1 (1) { ["y":"X":private]=> int(1888267830) }
Output for 7.0.20
<pre>int(203362629) object(X)#1 (1) { ["y":"X":private]=> int(203362629) }
Output for 7.0.14
<pre>int(1621982987) object(X)#1 (1) { ["y":"X":private]=> int(1621982987) }
Output for 7.0.7
<pre>int(1071673442) object(X)#1 (1) { ["y":"X":private]=> int(1071673442) }
Output for 7.0.6
<pre>int(45487606) object(X)#1 (1) { ["y":"X":private]=> int(45487606) }
Output for 7.0.5
<pre>int(1772519175) object(X)#1 (1) { ["y":"X":private]=> int(1772519175) }
Output for 7.0.4
<pre>int(667588915) object(X)#1 (1) { ["y":"X":private]=> int(667588915) }
Output for 7.0.3
<pre>int(2106252745) object(X)#1 (1) { ["y":"X":private]=> int(2106252745) }
Output for 7.0.2
<pre>int(958060065) object(X)#1 (1) { ["y":"X":private]=> int(958060065) }
Output for 7.0.1
<pre>int(250928832) object(X)#1 (1) { ["y":"X":private]=> int(250928832) }
Output for 7.0.0
<pre>int(1084419507) object(X)#1 (1) { ["y":"X":private]=> int(1084419507) }
Output for 5.6.28
<pre>int(2090866321) object(X)#1 (1) { ["y":"X":private]=> int(2090866321) }
Output for 5.6.21
<pre>int(1577642169) object(X)#1 (1) { ["y":"X":private]=> int(1577642169) }
Output for 5.6.20
<pre>int(576411615) object(X)#1 (1) { ["y":"X":private]=> int(576411615) }
Output for 5.6.19
<pre>int(2078566051) object(X)#1 (1) { ["y":"X":private]=> int(2078566051) }
Output for 5.6.18
<pre>int(647291731) object(X)#1 (1) { ["y":"X":private]=> int(647291731) }
Output for 5.6.17
<pre>int(1182771366) object(X)#1 (1) { ["y":"X":private]=> int(1182771366) }
Output for 5.6.16
<pre>int(787517466) object(X)#1 (1) { ["y":"X":private]=> int(787517466) }
Output for 5.6.15
<pre>int(521609611) object(X)#1 (1) { ["y":"X":private]=> int(521609611) }
Output for 5.6.14
<pre>int(512482649) object(X)#1 (1) { ["y":"X":private]=> int(512482649) }
Output for 5.6.13
<pre>int(380907104) object(X)#1 (1) { ["y":"X":private]=> int(380907104) }
Output for 5.6.12
<pre>int(122065794) object(X)#1 (1) { ["y":"X":private]=> int(122065794) }
Output for 5.6.11
<pre>int(903065211) object(X)#1 (1) { ["y":"X":private]=> int(903065211) }
Output for 5.6.10
<pre>int(1864550818) object(X)#1 (1) { ["y":"X":private]=> int(1864550818) }
Output for 5.6.9
<pre>int(449287042) object(X)#1 (1) { ["y":"X":private]=> int(449287042) }
Output for 5.6.8
<pre>int(1066201681) object(X)#1 (1) { ["y":"X":private]=> int(1066201681) }
Output for 5.6.7
<pre>int(1411722174) object(X)#1 (1) { ["y":"X":private]=> int(1411722174) }
Output for 5.5.35
<pre>int(642802274) object(X)#1 (1) { ["y":"X":private]=> int(642802274) }
Output for 5.5.34
<pre>int(1654256385) object(X)#1 (1) { ["y":"X":private]=> int(1654256385) }
Output for 5.5.33
<pre>int(472823724) object(X)#1 (1) { ["y":"X":private]=> int(472823724) }
Output for 5.5.32
<pre>int(1544002284) object(X)#1 (1) { ["y":"X":private]=> int(1544002284) }
Output for 5.5.31
<pre>int(673902236) object(X)#1 (1) { ["y":"X":private]=> int(673902236) }
Output for 5.5.30
<pre>int(689961687) object(X)#1 (1) { ["y":"X":private]=> int(689961687) }
Output for 5.5.29
<pre>int(1061321568) object(X)#1 (1) { ["y":"X":private]=> int(1061321568) }
Output for 5.5.28
<pre>int(1264638179) object(X)#1 (1) { ["y":"X":private]=> int(1264638179) }
Output for 5.5.27
<pre>int(1890658828) object(X)#1 (1) { ["y":"X":private]=> int(1890658828) }
Output for 5.5.26
<pre>int(1398778044) object(X)#1 (1) { ["y":"X":private]=> int(1398778044) }
Output for 5.5.25
<pre>int(405966844) object(X)#1 (1) { ["y":"X":private]=> int(405966844) }
Output for 5.5.24
<pre>int(438521421) object(X)#1 (1) { ["y":"X":private]=> int(438521421) }
Output for 5.4.45
<pre>int(738041642) object(X)#1 (1) { ["y":"X":private]=> int(738041642) }
Output for 5.4.44
<pre>int(1425034345) object(X)#1 (1) { ["y":"X":private]=> int(1425034345) }
Output for 5.4.43
<pre>int(358490287) object(X)#1 (1) { ["y":"X":private]=> int(358490287) }
Output for 5.4.42
<pre>int(1667355300) object(X)#1 (1) { ["y":"X":private]=> int(1667355300) }
Output for 5.4.41
<pre>int(1235526460) object(X)#1 (1) { ["y":"X":private]=> int(1235526460) }
Output for 5.4.40
<pre>int(575728264) object(X)#1 (1) { ["y":"X":private]=> int(575728264) }
Output for 5.4.39
<pre>int(963545678) object(X)#1 (1) { ["y":"X":private]=> int(963545678) }
Output for 5.4.38
<pre>int(1340413929) object(X)#1 (1) { ["y":"X":private]=> int(1340413929) }
Output for 5.4.37
<pre>int(1250581589) object(X)#1 (1) { ["y":"X":private]=> int(1250581589) }
Output for 5.4.36
<pre>int(765057200) object(X)#1 (1) { ["y":"X":private]=> int(765057200) }
Output for 5.4.35
<pre>int(1956262866) object(X)#1 (1) { ["y":"X":private]=> int(1956262866) }
Output for 5.4.34
<pre>int(918954879) object(X)#1 (1) { ["y":"X":private]=> int(918954879) }
Output for 5.4.32
<pre>int(127430837) object(X)#1 (1) { ["y":"X":private]=> int(127430837) }
Output for 5.4.31
<pre>int(2007972269) object(X)#1 (1) { ["y":"X":private]=> int(2007972269) }
Output for 5.4.30
<pre>int(660531997) object(X)#1 (1) { ["y":"X":private]=> int(660531997) }
Output for 5.4.29
<pre>int(1159263771) object(X)#1 (1) { ["y":"X":private]=> int(1159263771) }
Output for 5.4.28
<pre>int(648203957) object(X)#1 (1) { ["y":"X":private]=> int(648203957) }
Output for 5.4.27
<pre>int(1967907856) object(X)#1 (1) { ["y":"X":private]=> int(1967907856) }
Output for 5.4.26
<pre>int(1546861365) object(X)#1 (1) { ["y":"X":private]=> int(1546861365) }
Output for 5.4.25
<pre>int(855674555) object(X)#1 (1) { ["y":"X":private]=> int(855674555) }
Output for 5.4.24
<pre>int(653479094) object(X)#1 (1) { ["y":"X":private]=> int(653479094) }
Output for 5.4.23
<pre>int(1307277176) object(X)#1 (1) { ["y":"X":private]=> int(1307277176) }
Output for 5.4.22
<pre>int(1339134725) object(X)#1 (1) { ["y":"X":private]=> int(1339134725) }
Output for 5.4.21
<pre>int(1142229516) object(X)#1 (1) { ["y":"X":private]=> int(1142229516) }
Output for 5.4.20
<pre>int(1302563957) object(X)#1 (1) { ["y":"X":private]=> int(1302563957) }
Output for 5.4.19
<pre>int(326669961) object(X)#1 (1) { ["y":"X":private]=> int(326669961) }
Output for 5.4.18
<pre>int(1089178347) object(X)#1 (1) { ["y":"X":private]=> int(1089178347) }
Output for 5.4.17
<pre>int(113215535) object(X)#1 (1) { ["y":"X":private]=> int(113215535) }
Output for 5.4.16
<pre>int(828452322) object(X)#1 (1) { ["y":"X":private]=> int(828452322) }
Output for 5.4.15
<pre>int(252788214) object(X)#1 (1) { ["y":"X":private]=> int(252788214) }
Output for 5.4.14
<pre>int(1102021950) object(X)#1 (1) { ["y":"X":private]=> int(1102021950) }
Output for 5.4.13
<pre>int(261126496) object(X)#1 (1) { ["y":"X":private]=> int(261126496) }
Output for 5.4.12
<pre>int(1514090716) object(X)#1 (1) { ["y":"X":private]=> int(1514090716) }
Output for 5.4.11
<pre>int(1525150263) object(X)#1 (1) { ["y":"X":private]=> int(1525150263) }
Output for 5.4.10
<pre>int(1530825436) object(X)#1 (1) { ["y":"X":private]=> int(1530825436) }
Output for 5.4.9
<pre>int(1276280271) object(X)#1 (1) { ["y":"X":private]=> int(1276280271) }
Output for 5.4.8
<pre>int(27186965) object(X)#1 (1) { ["y":"X":private]=> int(27186965) }
Output for 5.4.7
<pre>int(2090976106) object(X)#1 (1) { ["y":"X":private]=> int(2090976106) }
Output for 5.4.6
<pre>int(2129721690) object(X)#1 (1) { ["y":"X":private]=> int(2129721690) }
Output for 5.4.5
<pre>int(1209368709) object(X)#1 (1) { ["y":"X":private]=> int(1209368709) }
Output for 5.4.4
<pre>int(1480571722) object(X)#1 (1) { ["y":"X":private]=> int(1480571722) }
Output for 5.4.3
<pre>int(1842311570) object(X)#1 (1) { ["y":"X":private]=> int(1842311570) }
Output for 5.4.2
<pre>int(781577590) object(X)#1 (1) { ["y":"X":private]=> int(781577590) }
Output for 5.4.1
<pre>int(923357694) object(X)#1 (1) { ["y":"X":private]=> int(923357694) }
Output for 5.4.0
<pre>int(1177943971) object(X)#1 (1) { ["y":"X":private]=> int(1177943971) }
Output for 5.3.29
<pre>int(476052894) object(X)#1 (1) { ["y":"X":private]=> int(476052894) }
Output for 5.3.28
<pre>int(27559174) object(X)#1 (1) { ["y":"X":private]=> int(27559174) }
Output for 5.3.27
<pre>int(1768514363) object(X)#1 (1) { ["y":"X":private]=> int(1768514363) }
Output for 5.3.26
<pre>int(931904859) object(X)#1 (1) { ["y":"X":private]=> int(931904859) }
Output for 5.3.25
<pre>int(436900703) object(X)#1 (1) { ["y":"X":private]=> int(436900703) }
Output for 5.3.24
<pre>int(1408042571) object(X)#1 (1) { ["y":"X":private]=> int(1408042571) }
Output for 5.3.23
<pre>int(448085386) object(X)#1 (1) { ["y":"X":private]=> int(448085386) }
Output for 5.3.22
<pre>int(1324344362) object(X)#1 (1) { ["y":"X":private]=> int(1324344362) }
Output for 5.3.21
<pre>int(1255326896) object(X)#1 (1) { ["y":"X":private]=> int(1255326896) }
Output for 5.3.20
<pre>int(1540513371) object(X)#1 (1) { ["y":"X":private]=> int(1540513371) }
Output for 5.3.19
<pre>int(201376870) object(X)#1 (1) { ["y":"X":private]=> int(201376870) }
Output for 5.3.18
<pre>int(832965268) object(X)#1 (1) { ["y":"X":private]=> int(832965268) }
Output for 5.3.17
<pre>int(268002462) object(X)#1 (1) { ["y":"X":private]=> int(268002462) }
Output for 5.3.16
<pre>int(1075843876) object(X)#1 (1) { ["y":"X":private]=> int(1075843876) }
Output for 5.3.15
<pre>int(1234798609) object(X)#1 (1) { ["y":"X":private]=> int(1234798609) }
Output for 5.3.14
<pre>int(559469504) object(X)#1 (1) { ["y":"X":private]=> int(559469504) }
Output for 5.3.13
<pre>int(226586734) object(X)#1 (1) { ["y":"X":private]=> int(226586734) }
Output for 5.3.12
<pre>int(377295586) object(X)#1 (1) { ["y":"X":private]=> int(377295586) }
Output for 5.3.11
<pre>int(1422522764) object(X)#1 (1) { ["y":"X":private]=> int(1422522764) }
Output for 5.3.10
<pre>int(2124873595) object(X)#1 (1) { ["y":"X":private]=> int(2124873595) }
Output for 5.3.9
<pre>int(2077690398) object(X)#1 (1) { ["y":"X":private]=> int(2077690398) }
Output for 5.3.8
<pre>int(1448175189) object(X)#1 (1) { ["y":"X":private]=> int(1448175189) }
Output for 5.3.7
<pre>int(441814055) object(X)#1 (1) { ["y":"X":private]=> int(441814055) }
Output for 5.3.6
<pre>int(1167194841) object(X)#1 (1) { ["y":"X":private]=> int(1167194841) }
Output for 5.3.5
<pre>int(809799038) object(X)#1 (1) { ["y":"X":private]=> int(809799038) }
Output for 5.3.4
<pre>int(1351939342) object(X)#1 (1) { ["y":"X":private]=> int(1351939342) }
Output for 5.3.3
<pre>int(337838139) object(X)#1 (1) { ["y":"X":private]=> int(337838139) }
Output for 5.3.2
<pre>int(981478444) object(X)#1 (1) { ["y":"X":private]=> int(981478444) }
Output for 5.3.1
<pre>int(798959519) object(X)#1 (1) { ["y":"X":private]=> int(798959519) }
Output for 5.3.0
<pre>int(1412101223) object(X)#1 (1) { ["y":"X":private]=> int(1412101223) }
Output for 5.2.17
<pre>int(135040618) object(X)#1 (1) { ["y:private"]=> int(135040618) }
Output for 5.2.16
<pre>int(1635013036) object(X)#1 (1) { ["y:private"]=> int(1635013036) }
Output for 5.2.15
<pre>int(1744178260) object(X)#1 (1) { ["y:private"]=> int(1744178260) }
Output for 5.2.14
<pre>int(725022162) object(X)#1 (1) { ["y:private"]=> int(725022162) }
Output for 5.2.13
<pre>int(88214051) object(X)#1 (1) { ["y:private"]=> int(88214051) }
Output for 5.2.12
<pre>int(2120117210) object(X)#1 (1) { ["y:private"]=> int(2120117210) }
Output for 5.2.11
<pre>int(1992841856) object(X)#1 (1) { ["y:private"]=> int(1992841856) }
Output for 5.2.10
<pre>int(364571191) object(X)#1 (1) { ["y:private"]=> int(364571191) }
Output for 5.2.9
<pre>int(318067494) object(X)#1 (1) { ["y:private"]=> int(318067494) }
Output for 5.2.8
<pre>int(597433759) object(X)#1 (1) { ["y:private"]=> int(597433759) }
Output for 5.2.7
<pre>int(920765163) object(X)#1 (1) { ["y:private"]=> int(920765163) }
Output for 5.2.6
<pre>int(422441902) object(X)#1 (1) { ["y:private"]=> int(422441902) }
Output for 5.2.5
<pre>int(795750426) object(X)#1 (1) { ["y:private"]=> int(795750426) }
Output for 5.2.4
<pre>int(706330387) object(X)#1 (1) { ["y:private"]=> int(706330387) }
Output for 5.2.3
<pre>int(364157578) object(X)#1 (1) { ["y:private"]=> int(364157578) }
Output for 5.2.2
<pre>int(1966869109) object(X)#1 (1) { ["y:private"]=> int(1966869109) }
Output for 5.2.1
<pre>int(1982580567) object(X)#1 (1) { ["y:private"]=> int(1982580567) }
Output for 5.2.0
<pre>int(1906774873) object(X)#1 (1) { ["y:private"]=> int(1906774873) }
Output for 5.1.6
<pre>int(1796244619) object(X)#1 (1) { ["y:private"]=> int(1796244619) }
Output for 5.1.5
<pre>int(864573873) object(X)#1 (1) { ["y:private"]=> int(864573873) }
Output for 5.1.4
<pre>int(714905856) object(X)#1 (1) { ["y:private"]=> int(714905856) }
Output for 5.1.3
<pre>int(752260327) object(X)#1 (1) { ["y:private"]=> int(752260327) }
Output for 5.1.2
<pre>int(46465974) object(X)#1 (1) { ["y:private"]=> int(46465974) }
Output for 5.1.1
<pre>int(1989438610) object(X)#1 (1) { ["y:private"]=> int(1989438610) }
Output for 5.1.0
<pre>int(103382196) object(X)#1 (1) { ["y:private"]=> int(103382196) }
Output for 5.0.5
<pre>int(2025977620) object(X)#1 (1) { ["y:private"]=> int(2025977620) }
Output for 5.0.4
<pre>int(150619170) object(X)#1 (1) { ["y:private"]=> int(150619170) }
Output for 5.0.3
<pre>int(104960701) object(X)#1 (1) { ["y:private"]=> int(104960701) }
Output for 5.0.2
<pre>int(2105339334) object(X)#1 (1) { ["y:private"]=> int(2105339334) }
Output for 5.0.1
<pre>int(1424224196) object(X)#1 (1) { ["y:private"]=> int(1424224196) }
Output for 5.0.0
<pre>int(942534249) object(X)#1 (1) { ["y:private"]=> int(942534249) }
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/PDVFC on line 5
Process exited with code 255.
Output for 4.3.0 - 4.3.1, 4.3.5 - 4.3.11, 4.4.0 - 4.4.1
Parse error: parse error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/PDVFC on line 5
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error, expecting `T_OLD_FUNCTION' or `T_FUNCTION' or `T_VAR' or `'}'' in /in/PDVFC on line 5
Process exited with code 255.

preferences:
185.63 ms | 401 KiB | 207 Q