Несмотря на то, что это очень старый вопрос, Google все же привел меня сюда, поэтому, возможно, мое решение будет полезно кому-то еще:
При попытке использовать версию MySQLi mysql_real_escape_string, вы поймете, чтоarray_map не может обработать два параметра, необходимые для mysqli_real_escape_string.Следовательно, вы должны обернуть его в функцию, которая принимает только один параметр:
function arrayEscaper($val){
global $link;
return mysqli_real_escape_string($link, $val);
};
Затем вы можете использовать эту функцию в array_map следующим образом:
$myArray = ["one", "two", "three"];
$myArrayEsc = array_map('arrayEscaper', $myArray);
$myString = implode(", ", $myArrayEsc);
Надеюсь, это поможет.