php - 有没有办法在不先创建我自己的函数的情况下将参数发送到回调函数?

标签 php arrays htmlspecialchars array-map

我有一组值,我想通过 htmlspecialchars 运行这些值,但带有如下参数:

$param = htmlspecialchars($param, ENT_QUOTES);

问题是,我有一组值,我想在这些值上运行 htmlspecialchars:

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

我想知道是否有办法将 ENT_QUOTES 传递到 array_map 回调中?

我总是可以使用我自己的函数,它使用 htmlspecialchars,但如果已经有办法做到这一点就好了。


在下面的答案之后,这是我的最终结果:

$array = array_map('htmlspecialchars', $array, array_fill(0, count($array), ENT_QUOTES));

它简单地用与 $array 一样多的值填充一个数组,并用 ENT_QUOTE 填充它。

最佳答案

如果您将第二个数组作为参数传递给 array_map,这应该可以工作将包含尽可能多的ENT_QUOTES元素作为您在 $array 中的元素数量:

$quote_style = ENT_QUOTES;
$array = array('"',"'","''''''''''''\"");
$ent_quotes_array = array($quote_style, $quote_style, $quote_style);
$array = array_map('htmlspecialchars', $array, $ent_quotes_array);
print_r($array);

或者,更优雅一点:

$array = array('"',"'","''''''''''''\"");
$ent_quotes_array = array_fill(0, sizeof($array), ENT_QUOTES);
$array = array_map('htmlspecialchars', $array, $ent_quotes_array);

关于php - 有没有办法在不先创建我自己的函数的情况下将参数发送到回调函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8454747/

相关文章:

php - 为什么这个字符串回显 0?

java - 使用 for 循环生成 TextView 不起作用?

php - 如何防止属性中的XSS

php - Laravel 在查询时从数据库中的字符串中获取整数值

php - 通过电子邮件发送 PHP 中的错误

python - 使用 numpy 数组和元组保持每个元素出现一次的快速方法

javascript - 将平面数组的人转换为 JavaScript 中的嵌套谱系树

php - 将 html 字符转换回 Flash 中的文本 - AS3

regex - Coldfusion 替换 "&"但不是 htmlspecialchars

php - 添加另一个选择