在 PHP7 之前,我会将 implode
和 array_map
结合起来,用mysql_real_escape_string
遍历每个值,以便为避免 sql 注入的语句准备它们。 例如:
$values = implode("', '", array_map('mysql_real_escape_string', $sqlArray));
mysql_real_escape_string
现在已被 mysqli::real_escape_string 取代。如何使用新方法完成上述代码,就像在array_map中使用 mysqli 类一样容易?
最好使用预准备语句,但对于问题,传递一个对象和方法数组。 这应该适用于任何需要回调的内容:
$result = array_map(array($mysqli, 'real_escape_string'), $sqlArray);
假设您有一个来自 mysqli 类的$mysqli
对象。