在多级数组上执行htmlspecialchars

时间:2015-01-05 16:31:27

标签: php arrays loops htmlspecialchars

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

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

2 个答案:

答案 0 :(得分:1)

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

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

答案 1 :(得分:-1)

您需要array_walk_recursive()

像这样:

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