PHP 개발 프로세스에서 배열은 자주 사용되는 데이터 구조입니다. 실제 응용 프로그램에서는 배열을 더 잘 처리하고 사용하며 개발 효율성을 높이기 위해 배열에서 빈 요소를 삭제해야 하는 경우가 많습니다.
그렇다면 PHP에서 빈 배열 요소를 제거하는 방법은 무엇입니까?
1. foreach 루프를 사용하여 탐색
foreach 루프를 사용하여 배열을 탐색한 다음 비어 있는지 판단하여 배열 요소를 삭제할 수 있습니다.
$arr = array('a', '', 'c', 'd', ''); foreach ($arr as $key => $value) { if (empty($value)) { unset($arr[$key]); } } print_r($arr);
위 코드에서 foreach 루프 $arr
배열의 모든 요소를 탐색하고 $value
가 비어 있는지 확인합니다. 비어 있으면 unset 함수는 배열에서 요소를 삭제합니다. <code>foreach
循环遍历 $arr
数组中的所有元素,判断 $value
是否为空,如果为空,使用 unset
函数从数组中删除该元素。
二、使用 array_filter 函数
另一种常见的方法是使用 array_filter
函数。它可以接受一个数组作为参数,并返回一个新的数组,该数组中不含有值为 FALSE
、NULL
、''
或者 []
的元素,它的语法如下:
$new_arr = array_filter($arr); print_r($new_arr);
三、使用 array_values 函数
使用 array_filter
函数删除掉空元素后,返回的数组可能会存在键名不连续的情况;为了让键名连续,我们可以使用 array_values
函数,该函数的作用是返回数组中所有的值并重新建立连续的整数索引,例如:
$new_arr = array_values(array_filter($arr)); print_r($new_arr);
上述代码中,我们使用 array_filter
删除掉空元素,然后使用 array_values
函数重新建立连续的整数索引。
四、使用 array_reduce 函数
如果数组中含有空数组元素,则使用 array_filter
函数仍然无法将这些元素删除;此时我们可以使用 array_reduce
函数,遍历数组,并使用条件运算符删除掉空元素,示例如下:
$arr = array('a', '', 'c', 'd', array()); $new_arr = array_reduce($arr, function($result, $item) { return is_array($item) || $item !== '' ? array_merge($result, array($item)) : $result; }, array()); print_r($new_arr);
上述代码中,使用 array_reduce
函数将数组 $arr
遍历一遍,使用条件运算符删除掉空元素。
五、总结
在 PHP 中剔除空数组元素可以使用多种方法,如使用 foreach
循环遍历、array_filter
函数、array_values
函数、array_reduce
array_filter
함수를 사용하는 것입니다. 배열을 매개변수로 허용하고 FALSE
, NULL
, ''
또는 값을 포함하지 않는 새 배열을 반환할 수 있습니다. []
요소의 구문은 다음과 같습니다. 🎜rrreee🎜3. array_values 함수를 사용하세요. 🎜🎜 array_filter
함수를 사용하여 빈 요소를 삭제한 후 반환된 배열 키가 있을 수 있습니다. 이름이 불연속적인 경우 키 이름을 연속적으로 만들기 위해 array_values
함수를 사용할 수 있습니다. 이 함수의 기능은 배열의 모든 값을 반환하는 것입니다. 연속 정수 인덱스를 다시 설정합니다. 예: 🎜rrreee🎜Above 코드에서 array_filter
를 사용하여 빈 요소를 삭제한 다음 array_values
함수를 사용하여 다시 설정합니다. 연속적인 정수 인덱스를 설정합니다. 🎜🎜4. array_reduce 함수를 사용하세요. 🎜🎜배열에 빈 배열 요소가 포함되어 있으면 array_filter
함수는 현재로서는 이러한 요소를 삭제할 수 없습니다. , 배열을 순회하고 조건 연산자를 사용하여 빈 요소를 삭제합니다. 예는 다음과 같습니다. 🎜rrreee🎜위 코드에서 array_reduce
함수를 사용하여 $arr
배열을 순회합니다. > 빈 요소를 삭제하려면 조건부 연산 기호를 사용하세요. 🎜🎜5. 요약🎜🎜 foreach
루프 탐색, array_filter
함수, array_values
등을 사용하여 PHP에서 빈 배열 요소를 제거하는 방법이 많이 있습니다. > 함수, array_reduce
함수 등 실제 상황과 개인 습관에 따라 선택해야 하는 구체적인 방법이 달라집니다. 어떤 방법을 사용하든 해당 작동 원리를 이해하고 후속 계산 및 사용에 영향을 주지 않도록 원래 배열을 수정하는 데 주의를 기울여야 합니다. 🎜위 내용은 PHP 배열에서 빈 요소를 제거하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!