3v4l.org

run code in 300+ PHP versions simultaneously
<?php $set1 = ['A', 'B', 'C']; $set2 = [1, 2, 3]; function perms( $set1, $set2, $i) { $perms = array(); if( $i == count( $set1) - 1) { return array(); } foreach( $set1 as $n1) { foreach( $set2 as $n2) { $perms[] = $n1 . $n2; } } $i++; for( $j = 0; $j < $i; $j++) { $set1[] = array_shift( $set1); $set2[] = array_shift( $set2); } return array_merge( $perms, perms( $set1, $set2, $i)); } var_dump( perms( $set1, $set2, 0));
Output for 5.4.0 - 5.4.45, 5.5.0 - 5.5.38, 5.6.0 - 5.6.38, 7.0.0 - 7.0.33, 7.1.0 - 7.1.25, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
array(18) { [0]=> string(2) "A1" [1]=> string(2) "A2" [2]=> string(2) "A3" [3]=> string(2) "B1" [4]=> string(2) "B2" [5]=> string(2) "B3" [6]=> string(2) "C1" [7]=> string(2) "C2" [8]=> string(2) "C3" [9]=> string(2) "B2" [10]=> string(2) "B3" [11]=> string(2) "B1" [12]=> string(2) "C2" [13]=> string(2) "C3" [14]=> string(2) "C1" [15]=> string(2) "A2" [16]=> string(2) "A3" [17]=> string(2) "A1" }
Output for 4.4.2 - 4.4.9, 5.1.0 - 5.1.6, 5.2.0 - 5.2.17, 5.3.0 - 5.3.29
Parse error: syntax error, unexpected '[' in /in/O0BBW on line 2
Process exited with code 255.
Output for 4.3.0 - 4.3.1, 4.3.5 - 4.3.11, 4.4.0 - 4.4.1, 5.0.0 - 5.0.5
Parse error: parse error, unexpected '[' in /in/O0BBW on line 2
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error in /in/O0BBW on line 2
Process exited with code 255.

preferences:
257.52 ms | 401 KiB | 424 Q