php에서 배열 요소를 삭제하는 것은 매우 간단하지만 때로는 배열을 삭제하려면 인덱스 정렬이 필요합니다. 여기서는 unset, array_splice를 사용하여 배열을 삭제하는 방법을 소개합니다. 의 요소 사이 배열의 요소를 삭제하려면 unset을 직접 사용할 수 있지만 배열의 인덱스는 재정렬되지 않습니다.
<?php $arr = array('a','b','c','d'); unset($arr[1]); print_r($arr); ?>
결과는 다음과 같습니다.
Array ( [0] => a [2] => c [3] => d )
그렇다면 누락된 요소를 어떻게 채우고 배열의 색인을 다시 생성할 수 있을까요? 대답은 array_splice()입니다:
<?php $arr = array('a','b','c','d'); array_splice($arr,1,1); print_r($arr); ?>
결과는 다음과 같습니다:
Array ( [0] => a [1] => c [2] => d )
배열의 특정 요소 삭제
<?php
$arr2 = array(1,3, 5,7,8);
foreach ($arr2 as $key=>$value){
if ($value === 3)
unset($arr2[$key]);
}
var_dump($arr2);
?>
예:
<?php $array = ('a' => "abc", 'b' => "bcd",'c' =>"cde",'d' =>"def",'e'=>""); array_filter($array); echo "<pre class="brush:php;toolbar:false">"; print_r($array); ?>
결과:
배열 (
[a ] => abc
[b] => bcd
[c] => cde
)
Summary
array_splice() 함수가 삭제되고, 배열의 인덱스 값도 변경됩니다.unset() 함수를 삭제해도 배열의 인덱스 값은 변경되지 않습니다.
위 내용은 php: unset과 array_splice의 사용법 차이에 대한 자세한 설명과 예제의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!