[php] PHP에서 배열의 시작 부분에 항목을 삽입하는 방법은 무엇입니까?

나는 그것을 끝까지 삽입하는 방법을 알고있다 :

$arr[] = $item;

그러나 처음에 어떻게 삽입합니까?



답변

array_unshift ($ array, $ item);을 사용하십시오 .

$arr = array('item2', 'item3', 'item4');
array_unshift($arr , 'item1');
print_r($arr);

너에게 줄거야

Array
(
 [0] => item1
 [1] => item2
 [2] => item3
 [3] => item4
)


답변

배열 키를 변경하지 않으려는 연관 배열 또는 번호 배열의 경우 :

$firstItem = array('foo' => 'bar');

$arr = $firstItem + $arr;

array_merge 항상 배열을 다시 색인화하므로 작동하지 않습니다.


답변

기능 사용 array_unshift


답변

문자열 / 맞춤 색인 키를 사용하여 연관 배열의 시작 부분에 항목 삽입

<?php

$array = ['keyOne'=>'valueOne', 'keyTwo'=>'valueTwo'];

$array = array_reverse($array);

$array['newKey'] = 'newValue';

$array = array_reverse($array);

결과

[
  'newKey' => 'newValue',
  'keyOne' => 'valueOne',
  'keyTwo' => 'valueTwo'
]


답변

도움이 될 것입니다

http://www.w3schools.com/php/func_array_unshift.asp

array_unshift();


답변

array_unshift () 를 사용 하여 배열의 첫 번째 요소를 삽입하십시오.

배열의 첫 번째 요소를 제거하는 사용자 array_shift () .


답변

또는 임시 배열을 사용한 다음 사이클 중에 변경하려는 경우 실제 배열을 삭제할 수 있습니다.

$array = array(0 => 'a', 1 => 'b', 2 => 'c');
$temp_array = $array[1];

unset($array[1]);
array_unshift($array , $temp_array);

출력은 다음과 같습니다.

array(0 => 'b', 1 => 'a', 2 => 'c')

사이클 중에 수행 할 때 $temp_array항목을 배열에 추가 한 후 청소해야합니다 .