php - 从多维数组中删除未设置的数组

标签 php arrays

是否可以从数组中删除数组?这就是数组的样子...

[1042] => Array
    (
        [contact_name] => XXX
        [email] => 
        [id] => XXX
    )

[1043] => Array
    (
        [contact_name] => XXX
        [email] => XXX
        [id] => XXX
    )

代码...

foreach($contacts as &$contact){

    if(empty($contact['email']) || $contact['email'] == '')
        unset($contact);

}

最佳答案

如果您使用数组键而不是引用,这是可能的。

foreach($contacts as $key => $contact){
    if(empty($contact['email']))
        unset($contacts[$key]);
}

我还删除了 $contact['email] == '' 因为 empty() 检查也涵盖了空 (!) 字符串。

注意: 一般来说,如果可以的话,请避免将引用与 foreach 一起使用。使用它们很容易导致不必要的副作用。

关于php - 从多维数组中删除未设置的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52319204/

相关文章:

php - 在 PHP 类中使用外部变量

php - 如何不杀死服务器并通过 simplexml 类和 GD 刷新超过 2000 个图像?

c - 赋值 c 中的不兼容类型

java - 在二维数组中查找字符串,然后转到相应的列

PHP 数组循环和格式

php - 显示 Zend Framework 表中的所有记录

php - 使用LIKE子句和NO_BACKSLASH_ESCAPES模式在mysqli prepare()中转义%号

php - mysql日文字符显示不正确

java - 如何拆分字符串数组?

arrays - 在两个数组中查找不匹配项并将不匹配项添加到列中的最后一个位置