>백엔드 개발 >PHP 튜토리얼 >PHP의 1차원 배열에서 값 요소를 삭제하는 방법

PHP의 1차원 배열에서 값 요소를 삭제하는 방법

韦小宝
韦小宝원래의
2018-02-02 09:54:503533검색

아래 편집기는 1차원 배열에서 특정 값 요소를 삭제하는 PHP 작업 방법을 공유합니다. 이는 PHP를 학습하는 데 좋은 참고 자료이자 가치가 있으므로 모든 사람에게 도움이 되기를 바랍니다. PHP에 관심이 있다면 편집기를 따라 와서 살펴보세요

1. 자신만의 for 루프를 작성하세요

배열에서 $tmp 요소의 값을 제거하세요

<?php
$tmp = &#39;324&#39;;
$arr = array(
&#39;0&#39; => &#39;321&#39;,
&#39;1&#39; => &#39;322&#39;,
&#39;2&#39; => &#39;323&#39;,
&#39;3&#39; => &#39;324&#39;,
&#39;4&#39; => &#39;325&#39;,
&#39;5&#39; => &#39;326&#39;,
);

Code

foreach( $arr as $k=>$v) {
 if($tmp == $v) unset($arr[$k]);
}
print_r($arr);
?>

이때

Array
(
 [0] => 321
 [1] => 322
 [2] => 323
 [4] => 325
 [5] => 326
)

인덱스를 재설정하려면

foreach( $arr as $k=>$v) {
 if($tmp == $v) unset($arr[$k]);
}
$arr = array_values($arr);
print_r($arr);
?>

라는 문장을 추가하세요. 이때의 결과

Array
(
 [0] => 321
 [1] => 322
 [2] => 323
 [3] => 325
 [4] => 326
)

array_merge()도 같은 효과를 얻을 수 있습니다

foreach( $arr as $k=>$v) {
 if($tmp == $v) unset($arr[$k]);
}
$arr = array_merge($arr);
print_r($arr);
?>

The 2. PHP에 포함된 함수를 우선적으로 사용하세요. C로 구현되어 있고 직접 작성하는 것보다 효율적이기 때문입니다.

array_searcharray_splice를 사용하세요. 여기서 array_splice는 자동으로 시퀀스 값을 재설정합니다.

Array
(
 [0] => 321
 [1] => 322
 [2] => 323
 [3] => 325
 [4] => 326
)

이때의 결과

$key=array_search($tmp ,$arr);
array_splice($arr,$key,1);
var_dump($arr);

Best practice

Array
(
 [0] => 321
 [1] => 322
 [2] => 323
 [3] => 325
 [4] => 326
)

Result

$arr = array_merge(array_diff($arr, array($tmp)));
var_dump($arr);
여기서 배열요소가 복잡한 자료구조라면 비교도 가능하다. 물론 데이터 자체는 여전히 1차원적입니다.

위 예에서 $tmp는 값입니다. $tmp가 배열 또는 기타 복잡한 데이터 구조인 경우 $array에서 $tmp에 포함된 모든 요소를 ​​삭제합니다. 위 방법도 유효합니다.

Array
(
 [0] => 321
 [1] => 322
 [2] => 323
 [3] => 325
 [4] => 326
)
위 중 하나를 삭제하세요. php 기사 차원 배열의 특정 값 요소의 연산 방법은 모두 편집자가 공유한 내용이므로 참고가 되셨으면 좋겠습니다!

관련 권장 사항:

php 배열의 마지막 요소를 삭제하는 함수 array_pop()

php 함수 addlashes() 함수에 의해 추가된 백슬래시를 삭제

stripslashes()

php 삭제 문자열 함수의 끝에 공백 문자가 있습니다. cut()

위 내용은 PHP의 1차원 배열에서 값 요소를 삭제하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.