3v4l.org

run code in 300+ PHP versions simultaneously
<?php declare(strict_types = 1); $xml = <<<'EOT' <?xml version="1.0"?><item>3</item> EOT; $xml = simplexml_load_string($xml); var_dump(intval($xml)); var_dump(intval(gmp_init(42))); //var_dump(intval (new \BCMath\Number(99))); var_dump((int) ($xml)); var_dump((int)(gmp_init(42))); // var_dump((int) new \BCMath\Number(99)); var_dump(floatval ($xml)); var_dump(floatval(gmp_init(42))); // var_dump(floatval(new \BCMath\Number(99))); var_dump((float) ($xml)); var_dump((float)(gmp_init(42))); // var_dump((float) new \BCMath\Number(99)); var_dump(strval($xml)); var_dump(strval(gmp_init(42))); var_dump(strval(new \BCMath\Number(99))); var_dump((string) ($xml)); var_dump((string)(gmp_init(42))); var_dump((string) new \BCMath\Number(99)); var_dump((bool) ($xml)); var_dump((bool) (gmp_init(0))); var_dump((bool) (new \BCMath\Number(0))); var_dump(boolval($xml)); var_dump(boolval(gmp_init(42))); var_dump(boolval (new \BCMath\Number(99)));

Here you find the average performance (time & memory) of each version. A grayed out version indicates it didn't complete successfully (based on exit-code).

VersionSystem time (s)User time (s)Memory (MiB)
8.5.30.0090.00819.29
8.5.20.0070.01018.69
8.4.180.0180.00920.07
8.4.170.0110.01121.96
8.4.90.0110.00919.96
8.3.300.0140.00818.91
8.3.180.0100.00817.21
8.3.50.0140.00817.27
7.4.100.0240.00817.19

preferences:
26.61 ms | 403 KiB | 5 Q