PHP에서 1차원 배열의 값 요소를 삭제하는 방법: 1. for 루프 문과 [array_merge()] 함수를 사용하여 값을 제거합니다. 코드는 [$arr = array_merge($arr)]입니다. 2. [array_splice] 기능을 사용하십시오. 】시퀀스 값을 자동으로 재설정하십시오.
PHP의 1차원 배열에서 특정 값 요소를 삭제하는 방법:
1 for 루프를 직접 작성하세요.
$tmp
값을 제거하세요. 배열에서 $tmp
这个元素的值
<?php $tmp = '324'; $arr = array( '0' => '321', '1' => '322', '2' => '323', '3' => '324', '4' => '325', '5' => '326', );
代码
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); ?>
Array ( [0] => 321 [1] => 322 [2] => 323 [3] => 325 [4] => 326 )
2.优先使用php自带函数,因为那是用C实现的,比自己写效率高。
使用array_search和array_splice,这里array_splice
$key=array_search($tmp ,$arr); array_splice($arr,$key,1); var_dump($arr);Code
Array ( [0] => 321 [1] => 322 [2] => 323 [3] => 325 [4] => 326 )이때
$arr = array_merge(array_diff($arr, array($tmp))); var_dump($arr);인덱스를 재설정하려면 문장을 추가하세요
Array ( [0] => 321 [1] => 322 [2] => 323 [3] => 325 [4] => 326 )이때의 결과
$arr = array_merge(array_diff($arr, $tmp)); var_dump($arr);
array_merge()
도 같은 결과를 얻을 수 있습니다 effectrrreeerrreee
2 .PHP 내장 함수를 우선적으로 사용하세요. 왜냐하면 함수는 C로 구현되어 있고 직접 작성하는 것보다 더 효율적이기 때문입니다.rrreee🎜Best practice🎜rrreee🎜Result🎜rrreee🎜여기서 배열요소가 복잡한 자료구조라면 비교도 가능하다. 물론 데이터 자체는 여전히 1차원적입니다. 🎜🎜위 예에서 $tmp는 값입니다. $tmp가 배열 또는 기타 복잡한 데이터 구조인 경우 $array에서 $tmp에 포함된 모든 요소를 삭제하세요. 위 방법도 유효합니다🎜rrreee🎜🎜관련 학습 권장 사항: 🎜 PHP 프로그래밍 🎜(동영상) 🎜🎜🎜array_search 및 array_splice를 사용하면 여기서
이때의 결과array_splice
가 자동으로 시퀀스 값을 재설정합니다.
rrreee
위 내용은 PHP의 1차원 배열에서 값 요소를 삭제하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!