У меня есть массив в PHP:
Array (
[0] => Red
[1] => Green
[2] => Blue
[3] => Yellow
[4] => Purple
[5] => Orange
[6] => Brown )
Я хочу, чтобы этот массив был перетасован, за исключением первых трех элементов ([0] [1] [2] должны оставаться в той же позиции). Например.:
Array (
[0] => Red
[1] => Green
[2] => Blue
[3] => Brown
[4] => Yellow
[5] => Purple
[6] => Orange )
Я знаю, как перетасовать целый массив с shuffle( $array );
но мне нужно посоветовать, как не перемешивать первые три элемента этого массива. Спасибо!
Это вы можете сделать:
$a=array("red","green","blue","yellow","brown");
$partA = array_slice($a,0,3);
$partB = array_slice($a,3,sizeof($a));
shuffle($partB);
$result = array_merge($partA, $partB);
print_r($result);
Других решений пока нет …