3v4l.org

run code in 300+ PHP versions simultaneously
<?php $options = ['paper', 'rock', 'scissors']; $lookup = array_flip($options); $outcomes = ['draw', 'win', 'lose']; // only extract a random value if the player has selected an option -- otherwise there is no comparison executed. $cpuSelection = $options[array_rand($options)]; $playerSelection = 'rock'; $comparison = $lookup[$cpuSelection] - $lookup[$playerSelection]; var_export([ 'cpu' => $cpuSelection, 'human' => $playerSelection, 'outcome' => $outcomes[($comparison + 3) % 3] ]);
Output for 7.2.2, 7.2.8, 7.2.12, 7.2.18 - 7.2.19, 7.2.25, 7.2.31 - 7.2.32, 7.3.0, 7.3.5, 7.3.11, 7.3.13, 7.3.19, 7.4.0 - 7.4.1, 7.4.4, 7.4.6, 7.4.8
array ( 'cpu' => 'scissors', 'human' => 'rock', 'outcome' => 'win', )
Output for 7.2.4, 7.2.6, 7.2.11, 7.2.13 - 7.2.14, 7.2.22 - 7.2.23, 7.2.26, 7.3.2 - 7.3.3, 7.3.7, 7.3.9, 7.3.12, 7.3.14, 7.3.16 - 7.3.18, 7.3.20, 7.4.2 - 7.4.3, 7.4.5, 7.4.7
array ( 'cpu' => 'rock', 'human' => 'rock', 'outcome' => 'draw', )
Output for 7.2.0 - 7.2.1, 7.2.3, 7.2.5, 7.2.7, 7.2.9 - 7.2.10, 7.2.15 - 7.2.17, 7.2.20 - 7.2.21, 7.2.24, 7.2.27 - 7.2.30, 7.3.1, 7.3.4, 7.3.6, 7.3.8, 7.3.10, 7.3.15
array ( 'cpu' => 'paper', 'human' => 'rock', 'outcome' => 'lose', )

preferences:
82.81 ms | 404 KiB | 68 Q