3v4l.org

run code in 300+ PHP versions simultaneously
<?php interface DirectoryBehaviorInterface { } /** * X Autoload plugins are for: * - More exotic autoload patterns that are incompatible with PSR-0 or PEAR * - Situations where we don't want to register a ton of namespaces, and using * a plugin instead gives us performance benefits. */ interface xautoload_FinderPlugin_Interface extends DirectoryBehaviorInterface { /** * Find the file for a class that in PSR-0 or PEAR would be in * $psr_0_root . '/' . $path_fragment . $path_suffix * * E.g.: * - The class we look for is Some\Namespace\Some\Class * - The file is actually in "exotic/location.php". This is not following * PSR-0 or PEAR standard, so we need a plugin. * -> The class finder will transform the class name to * "Some/Namespace/Some/Class.php" * - The plugin was registered for the namespace "Some\Namespace". This is * because all those exotic classes all begin with Some\Namespace\ * -> The arguments will be: * ($api = the API object, see below) * $path_fragment = "Some/Namespace/" * $path_suffix = "Some/Class.php" * $api->getClass() gives the original class name, if we still need it. * -> We are supposed to: * if ($api->suggestFile('exotic/location.php')) { * return TRUE; * } * * @param InjectedApiInterface $api * An object with a suggestFile() method. * We are supposed to suggest files until suggestFile() returns TRUE, or we * have no more suggestions. * @param string $path_fragment * The key that this plugin was registered with. * With trailing DIRECTORY_SEPARATOR. * @param string $path_suffix * Second part of the canonical path, ending with '.php'. * * @return bool|NULL * TRUE, if the file was found. * FALSE, otherwise. */ function findFile($api, $path_fragment, $path_suffix); } /** * X Autoload plugins are for: * - More exotic autoload patterns that are incompatible with PSR-0 or PEAR * - Situations where we don't want to register a ton of namespaces, and using * a plugin instead gives us performance benefits. */ interface FinderPluginInterface extends xautoload_FinderPlugin_Interface { /** * Find the file for a class that in PSR-0 or PEAR would be in * $psr_0_root . '/' . $path_fragment . $path_suffix * * E.g.: * - The class we look for is Some\Namespace\Some\Class * - The file is actually in "exotic/location.php". This is not following * PSR-0 or PEAR standard, so we need a plugin. * -> The class finder will transform the class name to * "Some/Namespace/Some/Class.php" * - The plugin was registered for the namespace "Some\Namespace". This is * because all those exotic classes all begin with Some\Namespace\ * -> The arguments will be: * ($api = the API object, see below) * $path_fragment = "Some/Namespace/" * $path_suffix = "Some/Class.php" * $api->getClass() gives the original class name, if we still need it. * -> We are supposed to: * if ($api->suggestFile('exotic/location.php')) { * return TRUE; * } * * @param InjectedApiInterface $api * An object with a suggestFile() method. * We are supposed to suggest files until suggestFile() returns TRUE, or we * have no more suggestions. * @param string $path_fragment * The key that this plugin was registered with. * With trailing DIRECTORY_SEPARATOR. * @param string $path_suffix * Second part of the canonical path, ending with '.php'. * @param int|string $id * Id under which the plugin was registered. * This may be a numeric id, or a string key. * * @return bool|NULL * TRUE, if the file was found. * FALSE, otherwise. */ function findFile($api, $path_fragment, $path_suffix, $id = NULL); }

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.3.70.0070.01516.75
8.3.60.0120.00318.30
8.3.50.0090.00921.80
8.3.40.0110.00418.72
8.3.30.0110.00418.96
8.3.20.0060.00320.20
8.3.10.0040.00421.97
8.3.00.0070.00322.50
8.2.180.0060.00916.75
8.2.170.0070.00722.96
8.2.160.0110.00619.08
8.2.150.0080.00024.18
8.2.140.0040.00424.66
8.2.130.0100.01026.16
8.2.120.0040.00419.36
8.2.110.0040.00422.12
8.2.100.0060.00619.32
8.2.90.0020.00519.09
8.2.80.0060.00317.97
8.2.70.0060.00317.50
8.2.60.0000.00817.80
8.2.50.0050.00318.07
8.2.40.0040.00419.82
8.2.30.0070.00018.04
8.2.20.0040.00417.56
8.2.10.0040.00417.57
8.2.00.0070.00017.66
8.1.280.0000.01525.92
8.1.270.0000.00922.04
8.1.260.0030.00626.35
8.1.250.0050.00328.09
8.1.240.0080.00023.96
8.1.230.0060.00619.00
8.1.220.0000.00917.74
8.1.210.0000.00818.77
8.1.200.0090.00017.25
8.1.190.0000.00817.41
8.1.180.0000.00718.60
8.1.170.0050.00318.65
8.1.160.0000.00722.05
8.1.150.0000.00718.55
8.1.140.0030.00617.38
8.1.130.0030.00317.73
8.1.120.0040.00417.45
8.1.110.0050.00217.44
8.1.100.0000.00717.46
8.1.90.0080.00017.32
8.1.80.0000.00717.43
8.1.70.0050.00217.32
8.1.60.0050.00317.52
8.1.50.0000.00717.50
8.1.40.0040.00417.50
8.1.30.0000.00817.58
8.1.20.0040.00417.66
8.1.10.0040.00417.42
8.1.00.0080.00317.25
8.0.300.0090.00018.77
8.0.290.0040.00417.04
8.0.280.0000.00818.41
8.0.270.0070.00017.28
8.0.260.0070.00016.74
8.0.250.0030.00316.97
8.0.240.0030.00316.91
8.0.230.0030.00316.82
8.0.220.0080.00016.73
8.0.210.0030.00316.90
8.0.200.0000.00716.95
8.0.190.0040.00416.83
8.0.180.0000.00716.89
8.0.170.0000.00716.88
8.0.160.0000.00716.76
8.0.150.0000.00716.82
8.0.140.0040.00416.77
8.0.130.0060.00013.23
8.0.120.0080.00016.79
8.0.110.0000.00816.75
8.0.100.0040.00416.88
8.0.90.0040.00416.90
8.0.80.0140.00416.89
8.0.70.0050.00216.82
8.0.60.0000.00716.87
8.0.50.0040.00416.69
8.0.30.0100.00717.14
8.0.20.0160.00717.40
8.0.10.0070.00017.03
8.0.00.0080.01116.88
7.4.330.0060.00015.09
7.4.320.0030.00316.39
7.4.300.0060.00016.59
7.4.290.0080.00016.54
7.4.280.0070.00016.48
7.4.270.0070.00016.54
7.4.260.0000.00716.38
7.4.250.0030.00616.37
7.4.240.0000.00716.46
7.4.230.0000.00716.27
7.4.220.0100.01316.58
7.4.210.0060.00916.57
7.4.200.0000.00716.46
7.4.190.0000.00716.67
7.4.160.0100.00616.32
7.4.150.0110.00517.40
7.4.140.0100.01417.86
7.4.130.0110.00716.55
7.4.120.0090.01016.36
7.4.110.0130.00316.44
7.4.100.0120.00616.55
7.4.90.0060.01216.59
7.4.80.0150.00419.39
7.4.70.0040.01316.41
7.4.60.0170.00016.33
7.4.50.0030.00316.45
7.4.40.0060.00622.77
7.4.30.0070.01016.69
7.4.00.0040.01415.16
7.3.330.0050.00013.09
7.3.320.0000.00513.23
7.3.310.0000.00716.18
7.3.300.0000.00716.09
7.3.290.0030.01516.23
7.3.280.0130.00416.18
7.3.270.0100.00717.40
7.3.260.0140.00316.13
7.3.250.0080.01016.37
7.3.240.0080.00816.18
7.3.230.0170.00316.39
7.3.210.0130.01316.25
7.3.200.0090.01219.39
7.3.190.0110.00516.49
7.3.180.0060.01216.21
7.3.170.0080.00816.27
7.3.160.0060.00916.63
7.3.120.0060.00614.59
7.2.330.0130.00716.54
7.2.320.0030.01416.66
7.2.310.0110.00616.51
7.2.300.0130.01016.63
7.2.290.0070.01016.47
7.2.120.0130.00316.51
7.2.110.0080.00516.19
7.2.100.0140.00316.63
7.2.90.0150.00416.16
7.2.80.0110.00616.25
7.2.70.0140.00516.58
7.2.60.0120.00516.87
7.2.50.0150.00316.58
7.2.40.0130.00616.79
7.2.30.0160.00316.89
7.2.20.0140.00416.79
7.2.10.0120.00316.50
7.2.00.0030.00918.07
7.1.240.0100.00515.66
7.1.230.0060.00915.76
7.1.220.0060.00915.32
7.1.210.0100.00515.58
7.1.200.0040.00815.62
7.1.190.0090.00615.56
7.1.180.0110.00615.71
7.1.170.0000.01215.71
7.1.160.0110.00415.45
7.1.150.0130.00315.73
7.1.140.0090.00615.50
7.1.130.0100.00715.88
7.1.120.0070.00715.82
7.1.110.0110.00715.52
7.1.100.0080.00916.89
7.1.90.0120.00015.68
7.1.80.0130.00515.69
7.1.70.0090.00316.34
7.1.60.0100.00917.74
7.1.50.0090.01216.25
7.1.40.0000.01415.50
7.1.30.0000.01715.76
7.1.20.0140.00015.63
7.1.10.0060.01015.75
7.1.00.0070.04818.83
7.0.320.0100.00314.99
7.0.310.0080.01115.14
7.0.300.0080.00815.18
7.0.290.0090.00615.36
7.0.280.0130.00415.01
7.0.270.0130.00515.37
7.0.260.0100.00615.34
7.0.250.0160.00015.05
7.0.240.0130.00315.48
7.0.230.0090.00515.15
7.0.220.0140.00315.00
7.0.210.0140.00115.31
7.0.200.0120.00116.06
7.0.190.0100.01015.45
7.0.180.0110.00715.33
7.0.170.0080.00215.45
7.0.160.0110.00615.27
7.0.150.0150.00215.30
7.0.140.0050.04218.59
7.0.130.0080.00415.22
7.0.120.0000.01415.52
7.0.110.0030.01015.33
7.0.100.0130.00415.28
7.0.90.0160.00015.37
7.0.80.0160.00015.28
7.0.70.0170.00015.38
7.0.60.0070.02417.63
7.0.50.0110.02116.56
7.0.40.0120.04416.71
7.0.30.0070.04616.71
7.0.20.0090.03616.66
7.0.10.0090.04416.75
7.0.00.0050.04816.73
5.6.380.0040.00914.43
5.6.370.0080.00814.39
5.6.360.0080.01214.20
5.6.350.0050.01014.13
5.6.340.0110.00614.44
5.6.330.0110.00714.18
5.6.320.0120.00314.48
5.6.310.0070.00714.02
5.6.300.0040.00914.38
5.6.290.0140.00313.96
5.6.280.0070.03917.43
5.6.270.0150.00014.26
5.6.260.0070.00714.07
5.6.250.0100.00514.20
5.6.240.0060.00614.36
5.6.230.0120.00614.34
5.6.220.0140.00014.28
5.6.210.0070.03817.38
5.6.200.0070.02616.34
5.6.190.0100.04317.52
5.6.180.0100.03517.40
5.6.170.0100.04717.38
5.6.160.0070.04517.21
5.6.150.0100.04016.22
5.6.140.0030.05016.16
5.6.130.0060.02416.25
5.6.120.0050.04517.65
5.6.110.0080.04517.57
5.6.100.0020.02817.50
5.6.90.0030.04217.58
5.6.80.0050.04217.07
5.6.70.0000.01413.96
5.6.60.0060.00614.00
5.6.50.0000.01314.04
5.6.40.0070.00414.13
5.6.30.0070.00313.97
5.6.20.0060.00614.14
5.6.10.0070.00713.94
5.6.00.0000.01014.21
5.5.380.0090.00311.27
5.5.370.0060.00811.27
5.5.360.0050.00511.27
5.5.350.0050.04515.90
5.5.340.0060.02414.63
5.5.330.0130.04015.74
5.5.320.0020.02315.82
5.5.310.0200.03815.74
5.5.300.0060.04114.67
5.5.290.0070.02614.65
5.5.280.0050.04516.00
5.5.270.0070.04516.06
5.5.260.0070.02616.02
5.5.250.0080.03815.87
5.5.240.0050.04615.68
5.5.230.0040.00811.27
5.5.220.0030.00511.27
5.5.210.0030.00311.27
5.5.200.0000.00811.27
5.5.190.0060.00311.27
5.5.180.0040.00411.27
5.5.170.0000.01313.79
5.5.160.0040.00411.27
5.5.150.0030.00611.27
5.5.140.0090.00311.27
5.5.130.0030.00611.27
5.5.120.0030.00311.27
5.5.110.0030.00711.27
5.5.100.0000.00511.27
5.5.90.0000.01011.27
5.5.80.0030.00311.27
5.5.70.0090.00311.27
5.5.60.0000.00511.27
5.5.50.0030.00911.27
5.5.40.0050.00011.27
5.5.30.0080.00311.27
5.5.20.0000.01011.27
5.5.10.0030.00611.27
5.5.00.0000.01111.27
5.4.450.0410.03215.38
5.4.440.0430.03315.44
5.4.430.0100.02815.41
5.4.420.0500.02515.42
5.4.410.0040.03215.35
5.4.400.0380.03115.20
5.4.390.0520.02915.25
5.4.380.0110.03115.02
5.4.370.0130.02014.88
5.4.360.0030.03314.92
5.4.350.0100.02211.65
5.4.340.0100.01911.64
5.4.330.0070.00411.27
5.4.320.0070.01911.89
5.4.310.0090.02411.88
5.4.300.0080.02111.89
5.4.290.0080.01911.88
5.4.280.0080.01911.83
5.4.270.0100.02211.83
5.4.260.0110.02415.03
5.4.250.0030.03215.10
5.4.240.0130.02915.17
5.4.230.0070.03915.03
5.4.220.0110.04015.12
5.4.210.0080.02915.10
5.4.200.0100.02715.09
5.4.190.0040.03615.13
5.4.180.0060.03115.10
5.4.170.0090.03015.10
5.4.160.0120.03115.13
5.4.150.0090.02815.09
5.4.140.0080.02713.86
5.4.130.0060.02813.94
5.4.120.0050.04113.95
5.4.110.0100.02713.90
5.4.100.0070.02813.89
5.4.90.0070.02713.96
5.4.80.0120.02813.81
5.4.70.0140.02213.81
5.4.60.0110.02313.90
5.4.50.0160.03013.86
5.4.40.0060.03713.89
5.4.30.0070.03213.82
5.4.20.0090.02713.82
5.4.10.0130.03413.86
5.4.00.0080.02413.58
5.3.290.0070.01912.04
5.3.280.0120.02512.93
5.3.270.0040.03613.02
5.3.260.0050.03413.05
5.3.250.0100.03213.03
5.3.240.0040.04113.05
5.3.230.0080.02712.98
5.3.220.0020.03213.03
5.3.210.0090.03213.03
5.3.200.0080.03312.91
5.3.190.0120.02312.88
5.3.180.0080.02512.96
5.3.170.0120.02312.83
5.3.160.0040.04213.00
5.3.150.0080.02712.95
5.3.140.0110.02512.98
5.3.130.0080.03112.99
5.3.120.0110.02712.98
5.3.110.0130.03712.92
5.3.100.0090.02812.77
5.3.90.0050.03012.60
5.3.80.0110.03312.73
5.3.70.0070.02712.73
5.3.60.0050.02612.75
5.3.50.0050.02812.69
5.3.40.0110.02512.70
5.3.30.0130.03312.58
5.3.20.0090.03512.53
5.3.10.0050.02812.54
5.3.00.0060.02812.38
5.2.170.0050.02411.17
5.2.160.0070.02811.26
5.2.150.0080.02111.26
5.2.140.0080.02611.16
5.2.130.0030.03011.11
5.2.120.0070.02911.28
5.2.110.0030.02311.17
5.2.100.0050.02711.30
5.2.90.0020.02411.23
5.2.80.0020.02711.22
5.2.70.0070.02211.26
5.2.60.0050.02511.26
5.2.50.0070.03111.19
5.2.40.0050.02811.22
5.2.30.0080.02111.16
5.2.20.0070.02011.11
5.2.10.0080.01911.16
5.2.00.0110.02411.11
5.1.60.0060.01710.60
5.1.50.0030.02710.64
5.1.40.0050.02710.66
5.1.30.0080.01910.84
5.1.20.0000.02710.91
5.1.10.0070.01810.67
5.1.00.0020.02210.66
5.0.50.0050.0189.95
5.0.40.0000.0189.83
5.0.30.0050.0209.78
5.0.20.0040.0199.76
5.0.10.0040.0219.75
5.0.00.0000.0289.72
4.4.90.0040.0118.52
4.4.80.0010.0188.58
4.4.70.0030.0128.52
4.4.60.0000.0158.58
4.4.50.0060.0088.51
4.4.40.0040.0228.51
4.4.30.0060.0108.53
4.4.20.0040.0108.56
4.4.10.0040.0178.51
4.4.00.0030.0208.53
4.3.110.0070.0108.48
4.3.100.0070.0078.49
4.3.90.0040.0108.47
4.3.80.0020.0178.47
4.3.70.0020.0128.48
4.3.60.0000.0168.44
4.3.50.0020.0148.43
4.3.40.0030.0188.52
4.3.30.0000.0187.87
4.3.20.0060.0097.87
4.3.10.0050.0107.82
4.3.00.0070.0129.53

preferences:
78.72 ms | 401 KiB | 5 Q