我需要转义数组,我正在使用array_map
和mysqli_real_escape_string
。
我有多个数组,例如
$_post['countries'];
$_post['categories'];
.
.
如何对这些数组执行转义?
我是这样做的。
$countries=array_map('mysqli_real_escape_string', $_POST['countries']);
$categories=array_map('mysqli_real_escape_string', $_POST['categories']);
.
.
但是它显示了一个错误:警告:mysqli_real_escape_string()期望恰好有2个参数,但只提供了1个
还要做什么?
$categories=mysqli_real_escape_string($connection, $_POST['categories']);
出错信息为
Warning: mysqli_real_escape_string() expects parameter 2 to be string, array given in
请查看并提出一种方法或另一种更好的方法来完成这个任务。
谢谢。
array_map(function($arrayElement) use ($databaseConnection) { return mysqli_real_escape_string($databaseConnection, $arrayElement); }, $_POST['countries']);
。但是,如果您已经在使用MySQLi,则应切换到使用绑定变量的预处理语句,这样就不需要转义了。 - Mark Baker