PHP - Переставить массив по определенному индексу
Например, у меня есть следующий код:
$sample = array(apple, orange, banana, grape);
Я хочу изменить порядок этого массива, сделав $sample[2]
новым $sample[0]
, сохраняя при этом тот же порядок во всем массиве.
Вывод должен быть:
Array ( [0] => banana [1] => grape [2] => apple [3] => orange)
4
Author: Funk Forty Niner, 2013-04-11
1 answers
Использовать array_shift()
столько раз, сколько вам нужно...
$sample = array('apple', 'orange', 'banana', 'grape');
$fruit = array_shift($sample);
$sample[] = $fruit;
// now $sample will be array('orange', 'banana', 'grape', 'apple');
Итак, скажем, вы хотите создать функцию:
function rearrange_array($array, $key) {
while ($key > 0) {
$temp = array_shift($array);
$array[] = $temp;
$key--;
}
return $array;
}
Теперь, используя rearrange_array($sample, 2)
, вы можете изменить порядок массива образцов в соответствии с желаемым результатом.
4
Author: Marty McVry, 2013-04-10 21:11:27