【问题标题】:PHP Cleaning up nested arrays with unknown structurePHP清理具有未知结构的嵌套数组
【发布时间】:2019-02-02 23:59:56
【问题描述】:

假设我有一个这样的数组:

[1=>[1=>2,2=>"something"],2=>[1,2],3=>"hello"]

该数组具有“无组织”结构,其中包含其他值的子数组。

我想对每个值运行一个htmlentities 函数,以确保值中没有坏的东西。

我一直在阅读RecursiveIteratorIterator,但我找不到一个示例来说明如何使用它来将 函数 应用于一个非常随机的嵌套多维数组中的每个值。任何帮助表示赞赏。

【问题讨论】:

    标签: php arrays multidimensional-array recursiveiterator


    【解决方案1】:

    你可以简单地使用array_walk_recursive:

    array_walk_recursive($input, function (&$value) {
      $value = htmlentities($value);
    });
    

    演示:https://3v4l.org/QmRJr

    【讨论】:

    • 另外,我可以只写 array_walk_recursive($input,'htmlentities') 吗?
    • @MatthewSemik 不幸的是不是,因为在这种情况下回调的返回值并不重要(例如与 array_map 相反)。您必须更改值本身,因此参数之前的&
    猜你喜欢
    • 2011-11-07
    • 1970-01-01
    • 2019-05-28
    • 1970-01-01
    • 1970-01-01
    • 2013-10-21
    • 2015-08-14
    • 1970-01-01
    • 2019-08-26
    相关资源
    最近更新 更多