php - 从未设置的多维数组中删除数组
问题描述
是否可以从数组中删除数组?这就是数组的外观...
[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()
-check 也涵盖了空 (!) 字符串。
注意:foreach
一般情况下,如果可以,请避免将引用与一起使用。使用它们很容易导致不必要的副作用。
推荐阅读
- machine-learning - 机器学习噪声过滤
- ios - 删除 viewDidAppear 中的上一个子视图
- python - 将 pandas 数据框中的每日数据转换为每月数据
- ruby-on-rails - 使用 Rails 5.2 和 Turbolinks、Webpacker 和 Angular 6 获取重复页面
- c - 检查正整数 N 是否为大 N 的 2 的幂时的错误
- android - 如何在 iOS 设备上运行用 AndroidStudio 开发的 Flutter 应用程序?
- angular - 为什么 Jhipster 在构建期间占用超过 2GB 的内存?
- swift - 如何将collectionview单元格彼此相邻对齐?
- matlab - MATLAB Struct Access
- css - 鼠标悬停和单击时 html div 的下拉效果