3v4l.org

run code in 300+ PHP versions simultaneously
<?php declare(strict_types=1); namespace Domain\Mixins { trait ContentAware { protected string $content; public function getContent() { return $this->content; } public function setContent(string $content) { $this->content = $content; } } use Domain\user\User; trait UserAware { protected User $author; public function getAuthor() { return $this->author; } public function setAuthor(User $author) { $this->author = $author; } } } namespace Domain\User { class User { public function __construct(public string $name){} } } namespace Domain\Forum { use Domain\Mixins; class Message { use Mixins\ContentAware, Mixins\UserAware; } } namespace { use Domain\Forum\Message; use Domain\User\User; $message = new Message; $message->setContent('Hello'); $message->setAuthor(new User('greg')); echo sprintf('%s %s', $message->getContent(), $message->getAuthor()->name); }

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.0150.00316.63
8.3.50.0120.00618.14
8.3.40.0040.01118.75
8.3.30.0070.00718.79
8.3.20.0090.00724.44
8.3.10.0110.00524.65
8.3.00.0090.00824.10
8.2.180.0100.00325.92
8.2.170.0120.00619.09
8.2.160.0110.00722.96
8.2.150.0080.00924.03
8.2.140.0080.00823.40
8.2.130.0090.00724.63
8.2.120.0120.00422.60
8.2.110.0120.00621.99
8.2.100.0080.01021.39
8.2.90.0060.00821.88
8.2.80.0110.00521.60
8.2.70.0080.00644.61
8.2.60.0100.00521.40
8.2.50.0100.00521.56
8.2.40.0090.00822.38
8.2.30.0060.00621.74
8.2.20.0070.00921.33
8.2.10.0080.00721.77
8.2.00.0050.00620.61
8.1.280.0120.00825.92
8.1.270.0050.00924.49
8.1.260.0080.00525.31
8.1.250.0080.00525.89
8.1.240.0060.00922.70
8.1.230.0120.00421.26
8.1.220.0070.00721.35
8.1.210.0050.00921.60
8.1.200.0070.00721.20
8.1.190.0050.00821.15
8.1.180.0050.00821.36
8.1.170.0110.00221.64
8.1.160.0040.00821.63
8.1.150.0060.00621.12
8.1.140.0060.00720.51
8.1.130.0040.00720.15
8.1.120.0050.00619.54
8.1.110.0090.00519.53
8.1.100.0070.00719.51
8.1.90.0120.00219.55
8.1.80.0050.00719.38
8.1.70.0070.00518.70
8.1.60.0060.00618.52
8.1.50.0120.00318.79
8.1.40.0090.00518.33
8.1.30.0110.00618.54
8.1.20.0110.00518.30
8.1.10.0120.00618.55
8.1.00.0100.00718.47
8.0.300.0090.00520.75
8.0.290.0090.00820.14
8.0.280.0150.00320.69
8.0.270.0070.00620.10
8.0.260.0090.00619.63
8.0.250.0090.00519.14
8.0.240.0090.00619.17
8.0.230.0090.00619.12
8.0.220.0060.00819.07
8.0.210.0150.00719.06
8.0.200.0090.00618.49
8.0.190.0130.00518.71
8.0.180.0090.00518.27
8.0.170.0130.00618.12
8.0.160.0120.00418.15
8.0.150.0120.00618.17
8.0.140.0130.00517.96
8.0.130.0140.00417.59
8.0.120.0130.00417.56
8.0.110.0090.00417.51
8.0.100.0120.00317.67
8.0.90.0100.00517.48
8.0.80.0100.00517.50
8.0.70.0100.00417.45
8.0.60.0110.00617.48
8.0.50.0110.00617.49
8.0.30.0110.00617.43
8.0.20.0100.00517.52
8.0.10.0140.00417.55
8.0.00.0090.00517.69
7.4.330.0150.00517.79
7.4.320.0150.00518.63
7.4.300.0110.00417.79
7.4.290.0130.00717.94
7.4.280.0150.00517.60
7.4.270.0140.00517.46
7.4.260.0170.00517.12
7.4.250.0140.00617.07
7.4.240.0120.00517.01
7.4.230.0140.00417.07
7.4.220.0120.00517.04
7.4.210.0140.00317.01
7.4.200.0110.00617.03
7.4.190.0120.00517.12
7.4.180.0110.00617.01
7.4.160.0140.00517.00
7.4.150.0120.00616.93
7.4.140.0120.00516.92
7.4.130.0120.00516.82
7.4.120.0150.00316.83
7.4.110.0150.00416.85
7.4.100.0130.00616.99
7.4.90.0120.00716.84
7.4.80.0120.00616.81
7.4.70.0120.00516.86
7.4.60.0120.00516.86
7.4.50.0120.00616.72
7.4.40.0130.00516.80
7.4.30.0130.00416.83
7.4.20.0120.00416.86
7.4.10.0120.00416.84
7.4.00.0090.00616.83
7.3.330.0140.00417.30
7.3.320.0140.00416.63
7.3.310.0130.00516.80
7.3.300.0130.00516.91
7.3.290.0130.00516.80
7.3.280.0130.00416.77
7.3.270.0150.00416.79
7.3.260.0140.00516.77
7.3.250.0140.00716.78
7.3.240.0140.00716.84
7.3.230.0140.00616.78
7.3.220.0160.00616.71
7.3.210.0160.00516.72
7.3.200.0150.00416.75
7.3.190.0150.00516.72
7.3.180.0140.00716.77
7.3.170.0150.00516.80
7.3.160.0130.00616.71
7.3.150.0140.00616.75
7.3.140.0160.00416.72
7.3.130.0150.00516.71
7.3.120.0150.00416.67
7.3.110.0150.00416.70
7.3.100.0150.00416.69
7.3.90.0140.00417.02
7.3.80.0140.00616.74
7.3.70.0160.00416.81
7.3.60.0130.00616.85
7.3.50.0150.00516.81
7.3.40.0140.00516.83
7.3.30.0150.00516.84
7.3.20.0170.00317.44
7.3.10.0170.00517.43
7.3.00.0200.00417.49

preferences:
50.86 ms | 401 KiB | 5 Q