3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Manufacturer{ protected $_name; public function setManufacturerName($name){ $this->_name = $name; } public function getManufacturerName(){ return $this->_name; } } class Product{ protected $_title; protected $_category; protected $_manufacturer; public function __construct(){ $this->_manufacturer = new Manufacturer(); } public function getCategory(){ return $this->_category; } public function getTitle(){ return $this->_title; } public function __clone(){ $this->_manufacturer = clone $this->_manufacturer; } public function __call($method, $arguments){ // replaces setManufacturerName() and getManufacturerName() wich do not exist in current class if (method_exists($this->_manufacturer, $method)) { return call_user_func_array(array($this->_manufacturer , $method), $arguments); } } /*public function setManufacturerName($name){ $this->_manufacturer->setManufacturerName($name); }*/ /*public function getManufacturerName(){ return $this->_manufacturer->getManufacturerName(); }*/ } class Order extends Product{ protected $_price; protected $_deliver; public function __construct($title, $category, $price){ parent::__construct(); $this->_title = $title; $this->_category = $category; $this->_price = $price; $this->doWeDeliver(); } public function setTitle($title){ $this->_title = $title; } public function getPrice(){ return $this->_price; } public function getDeliver(){ return $this->_deliver; } protected function doWeDeliver(){ $this->_deliver = $this->_price > 30 ? "Yes" : "No" ; } public function displaySentence(){ echo "Product: ".$this->_title." Category: ".$this->_category." Prijs: ".$this->_price." Gratis bezorging: ".$this->_deliver; } } $order = new Order("CD Brahms", "Media", "45"); $order->setManufacturerName("Producent A"); echo $order->getTitle()." is made by ". $order->getManufacturerName()."<br />"; // CD Brahms is made by Producent A $order2 = clone $order; $order2->setTitle("Second title"); $order2->setManufacturerName("Producent B"); echo $order2->getTitle()." is made by ". $order2->getManufacturerName()."<br />"; // Second title is made by Producent B echo $order->getTitle()." is made by ". $order->getManufacturerName()."<br />"; // CD Brahms is made by Producent A

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.60.0140.00318.31
8.3.50.0080.00721.99
8.3.40.0110.00318.79
8.3.30.0110.00718.98
8.3.20.0080.00018.85
8.3.10.0090.00021.21
8.3.00.0000.00721.85
8.2.180.0150.00716.63
8.2.170.0090.00622.96
8.2.160.0100.00320.38
8.2.150.0040.00424.18
8.2.140.0040.00424.66
8.2.130.0040.00426.16
8.2.120.0070.00021.18
8.2.110.0100.00020.56
8.2.100.0080.00317.91
8.2.90.0000.00719.27
8.2.80.0040.00417.97
8.2.70.0040.00417.50
8.2.60.0080.00017.80
8.2.50.0090.00318.07
8.2.40.0000.00818.09
8.2.30.0040.00419.45
8.2.20.0040.00417.59
8.2.10.0000.00717.72
8.2.00.0000.00817.59
8.1.280.0110.00425.92
8.1.270.0040.00423.99
8.1.260.0120.00626.35
8.1.250.0000.00828.09
8.1.240.0030.00622.46
8.1.230.0070.00421.04
8.1.220.0030.00518.77
8.1.210.0000.00818.90
8.1.200.0030.00717.35
8.1.190.0000.00817.53
8.1.180.0030.00618.10
8.1.170.0090.00018.43
8.1.160.0000.00718.92
8.1.150.0060.00318.67
8.1.140.0000.00717.48
8.1.130.0070.00017.96
8.1.120.0000.00817.41
8.1.110.0000.00817.42
8.1.100.0050.00217.55
8.1.90.0000.00817.55
8.1.80.0000.00817.49
8.1.70.0060.00317.46
8.1.60.0040.00417.49
8.1.50.0040.00417.45
8.1.40.0040.00417.55
8.1.30.0000.00817.73
8.1.20.0030.00617.71
8.1.10.0040.00417.61
8.1.00.0040.00417.49
8.0.300.0040.00419.91
8.0.290.0000.00917.18
8.0.280.0000.00718.36
8.0.270.0030.00317.40
8.0.260.0080.00016.86
8.0.250.0040.00416.96
8.0.240.0070.00316.96
8.0.230.0040.00416.91
8.0.220.0030.00316.94
8.0.210.0040.00416.88
8.0.200.0000.00616.95
8.0.190.0030.00317.03
8.0.180.0000.00816.96
8.0.170.0070.00017.01
8.0.160.0040.00416.94
8.0.150.0000.00716.89
8.0.140.0040.00416.89
8.0.130.0060.00013.36
8.0.120.0000.00716.88
8.0.110.0050.00316.98
8.0.100.0000.00816.89
8.0.90.0050.00216.91
8.0.80.0060.00916.90
8.0.70.0030.00316.80
8.0.60.0020.00516.99
8.0.50.0040.00416.79
8.0.30.0070.01317.16
8.0.20.0110.01117.40
8.0.10.0050.00317.00
8.0.00.0080.01316.84
7.4.330.0000.00516.84
7.4.320.0000.00616.65
7.4.300.0030.00316.67
7.4.290.0080.00016.66
7.4.280.0030.00516.64
7.4.270.0030.00316.64
7.4.260.0030.00313.23
7.4.250.0050.00316.40
7.4.240.0040.00416.55
7.4.230.0000.00716.63
7.4.220.0130.00616.36
7.4.210.0100.00516.58
7.4.200.0040.00416.70
7.4.190.0050.00216.39
7.4.160.0120.00316.49
7.4.150.0100.01017.40
7.4.140.0090.01417.86
7.4.130.0080.01016.48
7.4.120.0080.01016.57
7.4.110.0100.00716.50
7.4.100.0100.00616.63
7.4.90.0110.00716.45
7.4.80.0090.00919.39
7.4.70.0140.01016.45
7.4.60.0180.00616.59
7.4.50.0000.00816.58
7.4.40.0040.01122.77
7.4.30.0000.01716.53
7.4.00.0030.01315.23
7.3.330.0000.00513.33
7.3.320.0020.00213.31
7.3.310.0070.00016.25
7.3.300.0000.00716.29
7.3.290.0100.01016.35
7.3.280.0110.00816.36
7.3.270.0100.00917.40
7.3.260.0100.01218.24
7.3.250.0110.00616.46
7.3.240.0100.00716.54
7.3.230.0060.01616.45
7.3.210.0070.01316.48
7.3.200.0060.01219.39
7.3.190.0090.00616.50
7.3.180.0140.00316.32
7.3.170.0140.00616.40
7.3.160.0100.00616.40
7.3.120.0030.01315.00
7.2.330.0070.01116.96
7.2.320.0120.00616.70
7.2.310.0090.00916.40
7.2.300.0100.01016.79
7.2.290.0070.01116.51
7.2.00.0110.00019.47
7.1.100.0060.00918.06
7.1.70.0030.00517.19
7.1.60.0100.01619.17
7.1.50.0070.01416.72
7.1.00.0000.03722.30
7.0.200.0460.00314.63
7.0.140.0000.07722.10
7.0.100.0300.07319.92
7.0.90.0300.07319.94
7.0.80.0470.07319.91
7.0.70.0470.06319.92
7.0.60.0370.07320.00
7.0.50.0230.05320.43
7.0.40.0100.08020.13
7.0.30.0170.07720.08
7.0.20.0200.07320.16
7.0.10.0170.07019.95
7.0.00.0030.05720.13
5.6.280.0030.08321.09
5.6.250.0100.07720.61
5.6.240.0070.05320.53
5.6.230.0030.09020.70
5.6.220.0130.07020.64
5.6.210.0070.07720.77
5.6.200.0030.09321.13
5.6.190.0130.07721.05
5.6.180.0000.08721.13
5.6.170.0100.07020.97
5.6.160.0070.08021.11
5.6.150.0100.07021.13
5.6.140.0200.06721.13
5.6.130.0130.05321.20
5.6.120.0100.08020.93
5.6.110.0100.08021.06
5.6.100.0070.08721.13
5.6.90.0100.08021.11
5.6.80.0030.08020.39
5.6.70.0130.05720.41
5.6.60.0130.05020.53
5.6.50.0100.07720.52
5.6.40.0030.08320.41
5.6.30.0100.07020.41
5.6.20.0030.08320.26
5.6.10.0070.07320.46
5.6.00.0100.07720.47
5.5.380.0000.08720.52
5.5.370.0030.08320.38
5.5.360.0070.08020.41
5.5.350.0170.07020.44
5.5.340.0100.07720.96
5.5.330.0070.08020.86
5.5.320.0000.06020.66
5.5.310.0070.08320.80
5.5.300.0070.08020.80
5.5.290.0130.07720.94
5.5.280.0170.07020.90
5.5.270.0030.08020.82
5.5.260.0100.06020.93
5.5.250.0170.07020.57
5.5.240.0070.07720.35
5.5.230.0100.07720.27
5.5.220.0100.07020.25
5.5.210.0100.08020.29
5.5.200.0100.08320.27
5.5.190.0130.07020.25
5.5.180.0030.07320.29
5.5.160.0070.07320.29
5.5.150.0100.07320.20
5.5.140.0130.07720.32
5.5.130.0000.08320.27
5.5.120.0100.07320.16
5.5.110.0100.07020.28
5.5.100.0100.07020.07
5.5.90.0070.07320.09
5.5.80.0100.07720.19
5.5.70.0130.07020.11
5.5.60.0100.08020.05
5.5.50.0130.07019.98
5.5.40.0030.05020.12
5.5.30.0130.07020.04
5.5.20.0100.07320.16
5.5.10.0070.07720.13
5.5.00.0030.07720.12
5.4.450.0130.08019.36
5.4.440.0130.08019.36
5.4.430.0100.07719.37
5.4.420.0070.07719.50
5.4.410.0070.08319.29
5.4.400.0070.07319.14
5.4.390.0000.07019.25
5.4.380.0200.06719.04
5.4.370.0030.07019.14
5.4.360.0070.08019.14
5.4.350.0170.06718.88
5.4.340.0100.04719.18
5.4.320.0130.07019.05
5.4.310.0130.04319.18
5.4.300.0100.06719.23
5.4.290.0070.07718.90
5.4.280.0000.05719.13
5.4.270.0000.08719.04
5.4.260.0100.07019.09
5.4.250.0130.04319.13
5.4.240.0130.07319.20
5.4.230.0030.08019.13
5.4.220.0070.08018.95
5.4.210.0170.07019.16
5.4.200.0200.06019.22
5.4.190.0030.07718.89
5.4.180.0100.07019.18
5.4.170.0070.04318.93
5.4.160.0100.07319.16
5.4.150.0070.08318.88
5.4.140.0070.07716.49
5.4.130.0100.07016.50
5.4.120.0100.06316.55
5.4.110.0030.06016.45
5.4.100.0000.06016.40
5.4.90.0070.07316.54
5.4.80.0130.06716.41
5.4.70.0130.06316.32
5.4.60.0070.06716.32
5.4.50.0130.07016.46
5.4.40.0070.07316.53
5.4.30.0130.06716.33
5.4.20.0070.07716.31
5.4.10.0130.06016.31
5.4.00.0130.06715.94
5.3.290.0100.07014.64
5.3.280.0130.06014.63
5.3.270.0100.07314.70
5.3.260.0070.07714.61
5.3.250.0030.07714.70
5.3.240.0030.06314.63
5.3.230.0130.07314.61
5.3.220.0030.05314.53
5.3.210.0070.06314.63
5.3.200.0100.07314.57
5.3.190.0100.07014.60
5.3.180.0170.07014.71
5.3.170.0070.07714.57
5.3.160.0070.04014.65
5.3.150.0100.07014.52
5.3.140.0030.07714.57
5.3.130.0030.07714.50
5.3.120.0070.07714.57
5.3.110.0070.04714.59
5.3.100.0070.04014.01
5.3.90.0070.07014.16
5.3.80.0100.04714.08
5.3.70.0100.06014.13
5.3.60.0070.07314.01
5.3.50.0100.04714.09
5.3.40.0030.07313.86
5.3.30.0130.06713.87
5.3.20.0070.05713.78
5.3.10.0070.04713.66
5.3.00.0130.06713.59
5.2.170.0030.06311.18
5.2.160.0070.05311.08
5.2.150.0070.06311.31
5.2.140.0070.06711.20
5.2.130.0000.06311.15
5.2.120.0030.06011.20
5.2.110.0000.06311.23
5.2.100.0000.06311.25
5.2.90.0030.06011.02
5.2.80.0030.04011.26
5.2.70.0170.04710.99
5.2.60.0070.05710.99
5.2.50.0030.06711.00
5.2.40.0100.05710.95
5.2.30.0070.04711.01
5.2.20.0030.04711.13
5.2.10.0030.03011.02
5.2.00.0100.04010.61
5.1.60.0030.02710.04
5.1.50.0000.03010.13
5.1.40.0000.02710.02
5.1.30.0000.03310.49
5.1.20.0130.02010.32
5.1.10.0000.02710.11
5.1.00.0030.02310.18
5.0.50.0000.0238.46
5.0.40.0070.0138.51
5.0.30.0030.0278.09
5.0.20.0000.0208.31
5.0.10.0030.0178.27
5.0.00.0030.0408.20
4.4.90.0000.0378.05
4.4.80.0030.0378.05
4.4.70.0030.0338.05
4.4.60.0000.0378.05
4.4.50.0000.0238.05
4.4.40.0000.0278.05
4.4.30.0000.0208.05
4.4.20.0030.0178.05
4.4.10.0000.0178.05
4.4.00.0000.0238.05
4.3.110.0000.0178.05
4.3.100.0000.0178.05
4.3.90.0000.0178.05
4.3.80.0000.0238.05
4.3.70.0000.0138.05
4.3.60.0000.0208.05
4.3.50.0030.0138.05
4.3.40.0000.0278.05
4.3.30.0000.0178.05
4.3.20.0000.0178.05
4.3.10.0000.0208.05
4.3.00.0000.0138.05

preferences:
49.27 ms | 401 KiB | 5 Q