3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php $names = ['Adamino', 'Pete', 'Mark', 'Gonz']; $pairs = []; $plucked = array_rand($names, 2); $pair = [$names[$plucked[0]], $names[$plucked[1]]]; unset($names[$plucked[0]], $names[$plucked[1]]); $pairs[] = $pair; var_dump($pair); var_dump($pairs); var_dump($names); $result = "The PP randomizer has selected: \n"; foreach ($pairs as $p) { $result .= " -> {$p[0]} and {$p[1]}\n"; }
based on Yc8Mp
Output for 5.6.0, 5.6.3, 5.6.5, 5.6.8 - 5.6.10, 5.6.12 - 5.6.13, 5.6.15 - 5.6.16, 5.6.26 - 5.6.27, 5.6.29, 7.0.2, 7.0.7, 7.0.18, 7.1.1, 7.1.3, 7.2.6
array(2) { [0]=> string(4) "Mark" [1]=> string(4) "Gonz" } array(1) { [0]=> array(2) { [0]=> string(4) "Mark" [1]=> string(4) "Gonz" } } array(2) { [0]=> string(7) "Adamino" [1]=> string(4) "Pete" }
Output for 5.6.11, 5.6.24 - 5.6.25, 7.0.3, 7.0.6, 7.0.8, 7.1.2, 7.1.6, 7.2.0
array(2) { [0]=> string(7) "Adamino" [1]=> string(4) "Pete" } array(1) { [0]=> array(2) { [0]=> string(7) "Adamino" [1]=> string(4) "Pete" } } array(2) { [2]=> string(4) "Mark" [3]=> string(4) "Gonz" }
Output for 5.6.14, 5.6.23, 5.6.28, 5.6.30, 7.0.12, 7.0.16 - 7.0.17, 7.0.20, 7.1.7 - 7.1.10
array(2) { [0]=> string(7) "Adamino" [1]=> string(4) "Mark" } array(1) { [0]=> array(2) { [0]=> string(7) "Adamino" [1]=> string(4) "Mark" } } array(2) { [1]=> string(4) "Pete" [3]=> string(4) "Gonz" }
Output for 5.6.7, 5.6.19, 7.0.1, 7.0.10 - 7.0.11, 7.0.15, 7.1.5
array(2) { [0]=> string(7) "Adamino" [1]=> string(4) "Gonz" } array(1) { [0]=> array(2) { [0]=> string(7) "Adamino" [1]=> string(4) "Gonz" } } array(2) { [1]=> string(4) "Pete" [2]=> string(4) "Mark" }
Output for 5.6.1, 5.6.4, 5.6.21, 7.0.0, 7.0.13, 7.0.19, 7.1.0, 7.1.4
array(2) { [0]=> string(4) "Pete" [1]=> string(4) "Gonz" } array(1) { [0]=> array(2) { [0]=> string(4) "Pete" [1]=> string(4) "Gonz" } } array(2) { [0]=> string(7) "Adamino" [2]=> string(4) "Mark" }
Output for 5.6.2, 5.6.6, 5.6.17 - 5.6.18, 5.6.20, 5.6.22, 7.0.4 - 7.0.5, 7.0.9, 7.0.14
array(2) { [0]=> string(4) "Pete" [1]=> string(4) "Mark" } array(1) { [0]=> array(2) { [0]=> string(4) "Pete" [1]=> string(4) "Mark" } } array(2) { [0]=> string(7) "Adamino" [3]=> string(4) "Gonz" }
Output for hhvm-3.15.4
array(2) { [0]=> string(4) "Gonz" [1]=> string(4) "Mark" } array(1) { [0]=> array(2) { [0]=> string(4) "Gonz" [1]=> string(4) "Mark" } } array(2) { [0]=> string(7) "Adamino" [1]=> string(4) "Pete" }