PHP가 배열에서 요소를 제거하는 방법은 unset 함수를 사용하여 [unset($array[index]);]와 같은 배열 요소를 제거하는 것입니다. 요소가 삭제된 후에도 원래 인덱스는 변경되지 않습니다.
이 기사의 운영 환경: windows10 시스템, PHP 7.3, thinkpad t480 컴퓨터.
아래 네 가지 방법을 통해 배열에서 요소를 제거할 수 있습니다. 자세한 내용은 아래 코드를 참조하세요.
요소를 삭제하고 원래 인덱스를 변경하지 않고 유지
unset 함수를 사용할 수 있습니다. 예는 다음과 같습니다.
<?php $array = array(0 => "a", 1 => "b", 2 => "c"); unset($array[1]); //↑ 你想删除的key ?>
출력:
Array ( [0] => a [2] => c )
배열의 원래 인덱스를 변경하지 않고 unset을 사용할 수도 있습니다. 인덱스를 다시 정렬하려는 경우(인덱스가 0부터 시작하고 연속되도록) array_values 함수를 사용할 수 있습니다.
$array = array_values($array); /*
output
array(2) { [0]=> string(1) "a" [1]=> string(1) "c" } */
인덱스를 유지하지 않고 요소 삭제
다음을 사용할 수 있습니다. array_splice 함수의 예는 다음과 같습니다.
<?php $array = array(0 => "a", 1 => "b", 2 => "c"); array_splice($array, 1, 1); //↑ 你想删除的元素的Offset ?>
output :
Array ( [0] => a [1] => c )
여러 요소를 값으로 삭제하고 인덱스를 유지합니다.
array_diff 함수를 사용할 수도 있습니다. 예는 다음과 같습니다.
<?php $array = array(0 => "a", 1 => "b", 2 => "c"); $array = array_diff($array, ["a", "c"]); //└────────┘→ 你想删除的数组元素值values ?>
출력:
Array ( [1] => b )
unset과 유사하게 array_diff도 인덱스를 유지합니다.
키로 여러 요소 삭제, 인덱스 유지
array_diff_key 함수 사용, 예는 다음과 같습니다.
<?php $array = array(0 => "a", 1 => "b", 2 => "c"); $array = array_diff_key($array, [0 => "xy", "2" => "xy"]); //↑ ↑ 你想删除的数组键keys ?>
출력:
Array ( [1] => b )
설정 해제와 유사하며 array_diff_key도 인덱스를 유지합니다.
무료 학습 영상 공유: 프로그래밍 입문
위 내용은 PHP에서 배열의 요소를 제거하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!