我试图在PHP中使用array()
函数。
$CheckInfo->gatherInfo(array("hej", "ds"), "email");
然后将其收集为:
public function checkSecurity($input, $type){
// Set new varibels
$input = htmlentities(addslashes($input));
$type = htmlentities(addslashes($type));
$this->findPath($input, $type);
}
但是一旦我使用htmlentities(addslashes))
,如果给我这个错误:
警告:addslashes()期望参数1为字符串,数组在
如果没有addslashes和htmlentities,它会给我一个回归"数组"。我如何使用数组,读取它并在函数中使用它?
答案 0 :(得分:1)
您可以使用array_map()
功能。 array_map()
将回调函数应用于数组的每个元素。
private function sanitize_elements($element){
return htmlentities(addslashes($element));
}
public function checkSecurity($input, $type){
$input = array_map(array($this, 'sanitize_elements'), $input);
$type = htmlentities(addslashes($type));
$this->findPath($input, $type);
}
因此它会将数组的每个值发送到sanitize_elements()
方法,将htmlentities()
和addslashes()
函数应用于每个值,然后返回一个包含新值的数组。
以下是参考资料: