-4

次のように、すべてのmysqlクエリでaddslashesにカスタム関数を使用するWebサイトがあります。

function custom_addslashes($str) {
    return mysql_real_escape_string($str);
}

最近、mysql_real_escape_string が非推奨であることがわかりました。選択肢は 2 つあります。また

  1. サイト全体を調べて、すべてのページの準備済みステートメントに変換する (argh) または

  2. 上記の関数を変更します。PDO はさまざまなクエリに使用されるため、上記の関数を PDO を使用するように変更することは不可能だと思います。

オプション2を行う良い方法はありますか?

function custom_addslashes($str) {
    return  strtr($str, array("\0" => "", "\\" => "\","'","\\'"));
}

質問を明確にした

4

1 に答える 1