5

array_map と mysqli_real_escape_string で $_POST データをサニタイズしようとしています

問題は、array_map 内で $link 変数を使用すると、何らかの形で文字列に変換されることです。構文は正しいと確信していますが、これはしばらくの間私を知っていました。

ここに私の(簡略化された)コードがあります:

$link = mysqli_connect($host, $user, $password);
$row = array_map('mysqli_real_escape_string', $row, array($link, $row));
4

1 に答える 1

11

誰もが PDO を推奨していますが、mysqli クラスを使用して目的を達成したい場合は、次のように mysqli リンクと real_escape_string プロパティを配列として array_map に渡す必要があります。

$link = mysqli_connect($host, $user, $password);
$escaped_row = array_map(array($link, 'real_escape_string'), $row);
于 2016-03-09T06:12:01.597 に答える