Php 如何在不删除键和不重置键的情况下删除数组的空值
如何删除数组的空值而不删除键,也不重置键Php 如何在不删除键和不重置键的情况下删除数组的空值,php,codeigniter,Php,Codeigniter,如何删除数组的空值而不删除键,也不重置键 Eg: [0]= "test1" [1]= "" [2]= "test2" 执行array_filter会产生以下输出: [0]= "test1" [2]= "test2" 这里的钥匙也被取下了。是否有一种只删除值而不删除键的方法来获得如下输出: [0]= "test1" [1]= "test2" 是否有php函数可以执行此操作?您可以使用array\u values从数组中获取所有值,并对
Eg:
[0]= "test1"
[1]= ""
[2]= "test2"
执行array_filter会产生以下输出:
[0]= "test1"
[2]= "test2"
这里的钥匙也被取下了。是否有一种只删除值而不删除键的方法来获得如下输出:
[0]= "test1"
[1]= "test2"
是否有php函数可以执行此操作?您可以使用
array\u values
从数组中获取所有值,并对数组进行数字索引
$arr = array("test1","","test2");
$result = array_values( array_filter( $arr ) );
echo "<pre>";
print_r( $result );
echo "</pre>";
您可以使用array_filter函数对其进行过滤
Array
(
[0] => test1
[2] => test2
)
您想要的输出与您的问题不匹配:您确实想要重置键,因为您的第二个元素具有不同的键。例如,如果我的数组键是array:3[▼ 1=>“test1”3=>“test2”5=>“test3”],然后数组值(数组过滤器($arr))将数组重置为数组:3[▼ 0=>“test1”1=>“test2”2=>“test3”]@程序员是的,这应该是输出
$arr = ['test1','','test2'];
echo '<pre />';
print_r(array_filter($arr));
Array
(
[0] => test1
[2] => test2
)