> 백엔드 개발 > PHP 문제 > PHP 배열에서 null을 제거하는 방법

PHP 배열에서 null을 제거하는 방법

藏色散人
풀어 주다: 2023-03-17 16:52:01
원래의
4654명이 탐색했습니다.

PHP 배열에서 null을 제거하는 방법: 1. "foreach( $arr as $k=>$v){...}" 메서드를 사용하여 배열에서 null 값을 제거합니다. 2. while을 사용합니다. 3. array_filter 함수를 사용하여 배열을 필터링하고 null 값을 제거합니다.

PHP 배열에서 null을 제거하는 방법

이 튜토리얼의 운영 환경: Windows 10 시스템, PHP 버전 8.1, DELL G3 컴퓨터

PHP의 배열에서 null을 제거하는 방법은 무엇입니까?

PHP에서 배열의 null 값을 삭제하는 방법 소개

과거에는 배열에서 null 값을 제거할 때 foreach나 while을 강제로 사용했다고 하기가 민망합니다. 이 두 가지 구문 구조는 배열의 빈 요소를 삭제하는 데 사용되었습니다. 간단한 코드는 다음과 같습니다.

코드는 다음과 같습니다.

<?php  
foreach( $arr as $k=>$v){  
    if( !$v )  
        unset( $arr[$k] );  
}  
?>
로그인 후 복사

그리고 기분이 꽤 좋지만 이전에 시도해 본 적이 없습니다. , 먼저 $arr를 개체로 변환한 다음 개체의 특성을 사용하여 삭제합니다. foreach foreach가 실행될 때마다 변수가 너무 많이 복사됩니다. 페이지를 넘기면 큰 낭비가 될 것입니다.

인터넷을 돌아다니던 중 누군가 array_filter를 사용하자고 제안하는 것을 보고 깜짝 놀랐습니다. 설명서를 열어 살펴보니 보물산을 지키고 있었지만 사용법을 몰랐던 것입니다.

array_filter 함수의 기능은 콜백 함수를 사용하여 배열을 필터링하는 것입니다. 항상 콜백 함수를 사용하여 처리할 수 있다고 생각했지만 매뉴얼에 다른 문장이 있는 경우는 찾지 못했습니다. 콜백 함수가 아니며 기본값은 배열에서 값이 false인 항목을 삭제하는 것입니다.

코드는 다음과 같습니다.

<?php  
$entry = array(  
             0 => &#39;foo&#39;,  
             1 => false,  
             2 => -1,  
             3 => null,  
             4 => &#39;&#39; 
          );  
print_r(array_filter($entry));  
?>
로그인 후 복사

출력 값은 다음과 같습니다.

코드는 다음과 같습니다.

Array  
(  
    [0] => foo  
    [2] => -1  
)
로그인 후 복사

앞으로 아직 매뉴얼을 더 읽어봐야 할 것 같습니다... array_slice와 마찬가지로, 좋은 일이야. 안타깝게도 나는 이전에 그것을 눈치 채지 못했습니다.

첨부 파일: 또 다른 예

코드는 다음과 같습니다.

$strDelCodes = "A;B;;C;;C;D;;;D;D";
$rsArray = array_values (array_unique (array_diff (split (";", $strDelCodes), array (""))));
로그인 후 복사

$rsArray 배열에 저장된 값은 다음과 같습니다. A B C D

array_values() 함수는 주어진 키 값을 모두 포함하는 배열을 반환합니다. 배열이지만 키 이름은 유지하지 않습니다.

array_diff() 함수는 두 배열의 차이 배열을 반환합니다. 이 배열에는 비교되는 배열에 있지만 다른 매개변수 배열에는 없는 모든 키가 포함되어 있습니다.

array_unique() 함수는 배열에서 중복된 값을 제거하고 결과 배열을 반환합니다. 여러 배열 요소의 값이 동일할 경우 첫 번째 요소만 유지되고 나머지 요소는 삭제됩니다.

반환된 배열의 키 이름은 변경되지 않습니다.

array_merge() 함수는 두 개 이상의 배열을 하나의 배열로 병합합니다.

중복된 키 이름이 있는 경우 해당 키의 키 값은 마지막 키 이름에 해당하는 값이 됩니다. (나중 키 이름이 이전 키 이름을 덮어씁니다.) 배열이 숫자로 인덱싱된 경우 키 이름은 연속적으로 다시 인덱싱됩니다.

추천 학습: "PHP 비디오 튜토리얼"

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

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿