PHP如何删除数组中的空元素?(代码示例)
来源:青灯夜游
发布时间:2019-01-10 11:01:43
阅读量:847
在给定的一个包含元素的数组中,如何删除数组中空元素,如空字符串、NULL元素等?下面本篇文章就来带大家了解删除数组中的空元素的方法,希望对大家有所帮助。
方法一:使用empty()函数和unset()函数
empty()函数用于检查元素是否为空。
unset()函数用于取消设置指定的变量,它的行为取决于不同的事物。
示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | <?php
header( "content-type:text/html;charset=utf-8" );
$array = array ( "php" , 11, '' , null, 12, "javascript" , 2018, false, "mysql" );
echo ( "<br>" );
echo ( "原数组元素:<br>" );
foreach ( $array as $key => $value )
echo ( "'" . $array [ $key ] . "' " );
echo ( "<br><br><br>" );
foreach ( $array as $key => $value )
if ( empty ( $value ))
unset( $array [ $key ]);
echo ( "新数组元素:<br>" );
foreach ( $array as $key => $value )
echo ( "'" . $array [ $key ] . "' " );
?>
|
输出:
方法二:使用array_filter()函数
array_filter()函数,也称为回调函数,是用于使用用户定义的函数来过滤数组的元素。它迭代数组中的每个值,将它们传递给用户定义的函数或回调函数。
当使用array_filter()函数来声明回调函数时,它会删除false值,但是,如果未指定回调函数,则将删除数组中等于FALSE的所有值,例如空字符串或NULL值。
示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | <?php
header( "content-type:text/html;charset=utf-8" );
$array = array ( "php" , 11, '' , null, 12, "javascript" , 2018, false, "mysql" );
echo ( "<br>" );
echo ( "原数组元素:<br>" );
foreach ( $array as $key => $value )
echo ( "'" . $array [ $key ] . "' " );
echo ( "<br>" );
$filtered_array = array_filter ( $array );
echo ( "新数组元素:" );
var_dump( $filtered_array );
?>
|
输出: