PHP htmlspecialchars错误

为什么会这样

$trader_details = array_walk($trader_details, 'htmlspecialchars');

给这个错误?

Severity: Warning
Message: htmlspecialchars() expects parameter 2 to be long, string given

afaik htmlspecialchars除了输入字符串外,是否只有可选参数?这在codeigniter中运行

谢谢

解决方法:

传递给array_walk的回调函数期望第二个参数是array元素的键:

Typically, funcname takes on two parameters. The array parameter’s value being the first, and the key/index second.

但是htmlspecialchars希望第二个参数是引号样式(通常由整数类型的ENT_* constants之一指定).

尝试改用array_map.它仅使用数组的值.

上一篇:js把预定义的html字符串转换为 HTML 实体 htmlspecialchars 输出html实体内容包括标签,而不自动转义标签,只显示内容,类似php的htmlspecialchars


下一篇:用PHP中的htmlspecialchars()替换除某些html标签外的所有HTML标签?