在多级数组上执行 htmlspecialchars

Execute htmlspecialchars on a multi level array

我正在尝试找到一种方法来遍历我的所有数据并删除所有 HTML 特殊字符。问题是我的数据可以有数组值,这些值本身可以有 5 或 6 个子数组。有人可以帮我用一个好方法来做到这一点。这是我到目前为止一直在使用的代码,但它跳过了所有子数组值。

    foreach($view['data'] as $key => $value){
        // Check if Array
        if(!is_array($value)){
            $view['data'][$key] = htmlspecialchars($value);
        }
    }

你想要array_walk_recursive()

像这样:

 array_walk_recursive($view['data'], function($el){
     return htmlspecialchars($el);
 }); 

您可以使用 array_walk_recursive() 函数 - http://php.net/manual/en/function.array-walk-recursive.php

array_walk_recursive($view['data'], function(&$item) {
  $item = htmlspecialchars($item);
});