PHP の 1 つの文字列に一致するすべての ' を置き換えようとしていますが、これが機能しない理由がわかりません。私はphpで新しいです。
命令は次のとおりです。
$val = "Hello I'm newer in PHP.";
$val = str_replace("'", "''", $val);
前に backslah を設定しようとしましたが、うまくいきません
私を手伝ってくれますか?
PHP の 1 つの文字列に一致するすべての ' を置き換えようとしていますが、これが機能しない理由がわかりません。私はphpで新しいです。
命令は次のとおりです。
$val = "Hello I'm newer in PHP.";
$val = str_replace("'", "''", $val);
前に backslah を設定しようとしましたが、うまくいきません
私を手伝ってくれますか?
必要なのは、文字列を「db-safe」にすることです。ここにはいくつかのオプションがあります。
mysql_real_escape_string
「昔ながらの」mysql ドライバー (mysql_connect) を使用している場合に使用します。
$str = mysql_real_escape_string("私は PHP の初心者です");
PDO::quote()
PDO を使用している場合に使用します。
$conn = 新しい PDO(....); $str = $conn->quote("私は PHP の初心者です");
準備済みステートメントを使用してテーブルを挿入/更新します ( http://php.net/manual/de/mysqli.quickstart.prepared-statements.phpを参照)。
個人的には、複数の挿入/更新を行う場合にクエリを高速化し、最も安全な方法であるため、準備されたステートメントを好みます。
最初の行の末尾にセミコロンがないことを除けば、作成したコードに問題はありません。
$val = "Hello I'm newer in PHP.";
$val = str_replace("'", "''", $val);
echo $val; // Hello I''m newer in PHP.