从多维数组中递归删除空元素和子数组

2023-11-21

我似乎找不到一个简单、直接的解决方案来解决 PHP 中从数组中删除空元素的老问题。

我的输入数组可能如下所示:

Array ( [0] => Array ( [Name] => [EmailAddress] => ) ) 

(等等,如果有更多的数据,虽然可能没有……)

如果它看起来像上面那样,我希望它是完全空的我处理完之后。

So print_r($array);会输出:

Array ( )

如果我跑$arrayX = array_filter($arrayX);我仍然得到same print_r输出。然而,我看过的所有地方都表明这是在 PHP5 中删除空数组元素的最简单方法。

我也尝试过$arrayX = array_filter($arrayX,'empty_array');但我收到以下错误:

警告:array_filter() [function.array-filter]:第二个参数“empty_array”应该是有效的回调

我究竟做错了什么?


尝试使用array_map()将过滤器应用于每个数组$array:

$array = array_map('array_filter', $array);
$array = array_filter($array);

Demo: http://codepad.org/xfXEeApj

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从多维数组中递归删除空元素和子数组 的相关文章

  • Smarty 如果 URL 包含

    使用 Smarty 标签我想确定 URL 是否包含单词 例如 if smarty get page contains product php 我知道 contains 不存在 但是我怎样才能轻松地编写类似的东西来实现上述代码呢 所有 PHP
  • Ajax 没有将我重定向到下一页

    我正在尝试将单击的图像的 ID 传递到下一页 当我开发代码时 它没有将我重定向到下一页 当我单击 F12 并检查网络中的 POST 时 它显示变量已正确传递到下一页 如附图所示 但它没有将我重定向到下一页 所以现在我知道变量在下一页中正确传
  • 尝试使用 php 发送 POST 请求,无论我做什么,我都会收到“HTTP ERROR 500”

    为了发出 HTTP 请求 有人建议我尝试使用 PHP 并给了我一段代码 url https example com dashboard api data array to gt PHONE NUMBER from gt SENDER ID
  • 使用 ImageMagick 和 PHP 将 PNG 转换为 JPG 并将透明背景设置为白色

    将图像从 PNG 转换为 JPEG 时 如何使用 ImageMagick 带有 php 扩展 将透明背景设置为白色 在撰写本文时 您尚未指定正在使用哪个扩展 但如果您使用命令行 则命令将是 convert image png backgro
  • php中的条件格式化html表与时间戳比较

    echo table style width 100 tr echo td Order td echo td Destination td echo td Location td echo td Status td echo td Time
  • CodeIgniter 控制器 - JSON - AJAX

    我正在尝试通过 AJAX 使用 CodeIgniter 发送表单构建 并尝试使用 JSON 获取响应 但是 我只在打开开发人员选项卡时看到响应 我什至不确定这是否实际上是响应 因为它显示了两个 json 数据 它所显示的只是加载旋转器 然后
  • 获取字符串中的最后一个整数

    我需要隔离包含多个整数的字符串中最新出现的整数 我怎样才能得到23代替1 for lastnum1 text 1 out of 23 lastnum1 this gt getEval eregi replace out of text 你可
  • 访问sendBeacon发送的数据

    文档表明sendBeacon通过发送其数据HTTP POST request 但在 PHP 中 POST变量似乎是一个空数组 这是我的 JavaScript 代码 navigator sendBeacon beacon log php My
  • 在 Go 中,如何将结构体转换为字节数组?

    我有一个我定义的结构实例 我想将其转换为字节数组 我尝试了 byte my struct 但这不起作用 另外 我还被指出二进制包 http golang org pkg encoding binary 但我不确定我应该使用哪个函数以及应该如
  • 对 SimpleXML 数据进行排序和分组

    我正在对 XML 文件中的出版物数据进行排序和分组 我目前使用的方法效果很好大部分情况下 尽管我觉得有一种更有效的方法来完成我想要完成的任务 以下是目标节点的示例
  • Facebook 应用程序无法获取会话

    我正在 Heroku 上为 Facebook 开发一个非常基本的 PHP 应用程序 它显示非常基本的用户信息 如姓名 个人资料图片 但该应用程序在 getToken 方法中停止 我在登录我的个人资料后尝试了该应用程序 但仍然出现相同的消息
  • 从零开始的 numpy 形状意味着什么

    好的 我发现数组的形状中可以包含 0 对于将 0 作为唯一维度的情况 这对我来说是有意义的 它是一个空数组 np zeros 0 但如果你有这样的情况 np zeros 0 100 让我很困惑 为什么这么定义呢 据我所知 这只是表达空数组的
  • 按范围迭代数组

    我有一个数组 1 2 3 4 5 6 100 我希望将此数组迭代 5 次 具体来说 取数组的前 5 个数字并获取平均值 继续处理接下来的 5 个数字并获取平均值 依此类推 我尝试过多种方法 例如Dequeue和 for 循环但未能获得所需的
  • 在 angular2 中过滤数组

    我正在研究如何在 Angular2 中过滤数据数组 我研究过使用自定义管道 但我觉得这不是我想要的 因为它似乎更适合简单的表示转换 而不是过滤大量数据 数组排列如下 getLogs Array
  • Codeigniter - 出现 404 Not Found 错误

    我们在 godaddy 有两个托管套餐 我们的实时网站使用以下 htaccess 文件运行良好 无需在 url 中使用 index php 即可访问网站 RewriteEngine On RewriteCond REQUEST FILENA
  • 如何将 UDF 中的结构或类数组返回到数据帧列值中?

    d ID 1 pID 1000 startTime 2018 07 02T03 34 20 endTime 2018 07 03T02 40 20 ID 1 pID 1000 startTime 2018 07 02T03 45 20 en
  • 如何将 Smarty 3 包含到 Laravel 4 中?

    我是 Laravel 的新手 所以仍在习惯这些概念 但是我有大约 10 年的使用 Smarty 的经验 所以我希望利用这一点 除了事实上 Blade 似乎缺乏太多我发现有用且在 Smarty 中开箱即用的功能 但无论如何除了这个问题的要点之
  • 哪个集合更适合存储多维数组中的数据?

    我有一个multi dimensional array of string 我愿意将其转换为某种集合类型 以便我可以根据自己的意愿添加 删除和插入元素 在数组中 我无法删除特定位置的元素 我需要这样的集合 我可以在其中删除特定位置的数据 也
  • 在 Javascript 中减少/分组数组

    基于this https stackoverflow com a 40774906 3254598例如 我想以稍微不同的方式按对象进行分组 结果应该如下 key audi items make audi model r8 year 2012
  • 使用 crypt() 加密

    我目前正在做一个非常安全的登录系统 但我是 crypt 函数的新手 需要一些快速帮助 我在注册过程中使用 crypt 加密密码字符串并将其保存到数据库中 但是 我如何在登录过程中解密密钥 或者我应该怎么做 或者是否可以对提交的密码字符串进行

随机推荐

  • 如何在 vb.net 中处理表单关闭事件

    我使用了下面的代码 但它没有显示消息框 这段代码有什么问题 Private Sub frmSimple Disposed ByVal sender As Object ByVal e As System EventArgs Handles
  • 实体框架代码优先 - DbContext 上没有 Detach() 方法

    我想知道为什么 DbContext 对象上没有像 ObjectContext 那样的 Detach 方法 我只能假设这种遗漏是故意的 但我很难弄清楚为什么 我需要能够分离和重新附加实体 例如 将缓存放入 ASP NET 项目中 但是 由于我
  • 使用 Selenium 创建并执行 Javascript 函数

    我正在尝试使用 Selenium 创建并执行 JavaScript 函数 我这样做是这样的 js func function blah a b c self selenium execute script js script self se
  • iOS 5.1 : -[UIColor colorWithPatternImage:] 背景颜色绘制纯黑色

    在今天发布的 iOS 5 1 GM 中测试我的应用程序时 我注意到我的一些视图绘制的是纯黑色而不是图案背景色 完全相同的代码在以前的 iOS 版本上运行良好 在 4 2 5 0 1 上测试 See screenshots 还有其他人经历过这
  • 使用 AngularJs 中的 Expression 动态生成 ng-class 变量

    这是我的 HTML 代码的片段 div div boxName div div 我正在尝试做的事情 我使用上面编写的代码片段创建了 3 个 div 元素 它们将位于屏幕顶部 每个 div 元素将使用 css 赋予一个盒子的形状 框 div
  • 将 string 转换为 int 太慢

    我有一个程序 每行读取 3 个字符串 共 50000 个 然后它会执行其他操作 读取文件并转换为整数的部分占用了总运行时间的 80 我的代码片段如下 import time file open E temp edges big txt re
  • 升级pip后DistributionNotFound错误

    在阅读有关 virtualenv 的内容时here我意识到我没有 pip 1 3 所以我跑了pip install upgrade pip现在当我跑步时pip version我得到以下信息 Traceback most recent cal
  • 重复异步任务

    我对在 Android 应用程序中重复 AsyncTask 的可能性有疑问 我想重复一些操作 例如从服务器下载文件 如果由于某种原因无法下载该文件 则重复n次 有一种快速的方法可以做到这一点吗 您不能重复执行 AsyncTaskbut您可以
  • navigator.onLine 在我的手机上无法使用。如何检查互联网是否在线。离线???电话间隙

    我正在为我的应用程序使用phonegap 我的应用程序基本上用于来自一个网站的 RSS 提要 但我的要求是当没有互联网时应用程序应该alert offline 当应用程序在线运行时 所有数据都存储到数据库中 当互联网不存在时 数据会从数据库
  • 此处不允许使用 Maven Jetty 插件守护进程元素

    我正在尝试配置项目的 pom xml 文件 我希望它在测试阶段启动 Jetty 服务器 为了做到这一点 我应该将 daemon 元素添加到 Jetty 插件中 如下所示 但 IntelliJ 警告我 此处不允许使用 Element daem
  • Python Marshmallow Field 可以是两种不同的类型

    我想指定一个棉花糖模式 对于我的一个字段 我希望对其进行验证 但它可以是字符串或字符串列表 我尝试过原始字段类型 但这允许一切通过 有没有办法只验证我想要的两种类型 就像是 value fields Str or fields List 我
  • PHP 扩展未在 phpinfo 中加载

    所以我在 Mountain Lion 上运行 MAMP 并使用 pecl 安装了 gmagick 和 imagick 两者都是 relase 候选者 主要是因为 gmagick 没有稳定的版本并且 imagick 3 0 0 没有安装 它给
  • 公共功能与公共时段

    在我一年的 Qt 编程中 我学到了很多关于信号和槽的知识 但还不够 http doc qt io qt 5 signalsandslots html 插槽可以用来接收信号 但也是正常的 成员函数 那么 有什么理由不声明继承自的类中的每个函数
  • dartlang中的double.toStringAsFixed和toStringAsPrecision有什么区别?

    我想知道这两种方法有什么区别 我想toStringAsFixed修剪数字 但从 doc 中的示例来看 两者都对数字进行四舍五入 这是相关问题 https github com dart lang sdk issues 25947 1 Dou
  • 如何在 Xcode 4 中进行代码设计和沙箱助手应用程序?

    这就是问题 我有一个包含 HelperApp 的 MainApp Helper 应用程序用于登录项 因此我需要区分 MainApp 和 HelperApp 捆绑 ID 感谢 BuildPhase Copy 我将 HelperApp 复制到
  • X11 鼠标移动事件

    在 XLib 中创建窗口时 我提供给大家的口罩有哪些SetWindowAttributes event mask成员 我必须将什么传递给第 11 个参数XCreateWindow 我在主消息循环中寻找的事件是什么 我使用的地方XNextEv
  • 如何将 WSDL 文件转换为类文件

    我有一个 WSDL 文件 我想将 wsdl 文件转换为 Web 服务类文件 是否可以 如果是的话请详细地向我解释一下 在解决方案资源管理器中右键单击 您的项目并转到 添加服务 参考 按窗口底部的 高级 按窗口底部的 添加 Web 引用 在
  • Android TabLayout一旦切换fragment就不再显示内容

    我在我的项目中使用导航抽屉 其中有 5 个片段 在一个片段中 我在设计支持库中引入了 TabLayout 其中包括 2 个片段 一切正常 除了当我离开具有 TabLayout 的片段并切换回它时 所有内容都消失了 在 TabLayout 中
  • 悬停时从下到上更改背景

    我如何更改背景颜色a hover使用持续时间为 0 3 秒的从底部到顶部的过渡 ul li a a li li a a li li a a li ul 那可能吗 Thanks 没有办法 一般 在 CSS 中应用过渡方向 然而 我们可以解决办
  • 从多维数组中递归删除空元素和子数组

    我似乎找不到一个简单 直接的解决方案来解决 PHP 中从数组中删除空元素的老问题 我的输入数组可能如下所示 Array 0 gt Array Name gt EmailAddress gt 等等 如果有更多的数据 虽然可能没有 如果它看起来