2016-03-07 32 views
0

在PHP7之前,我會結合implodearray_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類一樣容易?

回答

4

您可能會更好地使用預處理語句,但對於這個問題,請傳遞一個對象和方法的數組。這應該適用於任何需要一個回調:

$result = array_map(array($mysqli, 'real_escape_string'), $sqlArray); 

假設你有一個$mysqli對象,你從mysqli class工作。

+0

什麼是'$ mysql'? – RiggsFolly

+1

好吧現在:_什麼是'$ mysqli'_ – RiggsFolly

+0

謝謝,是的,我已經有一個$ mysqli對象。非常感謝Abra – willdanceforfun

相關問題