2017-05-21 5 views
-2

私はアポストロフィを含む文字列を参照するphp変数を持っていますが、この変数を引用すると文字列を終了しようとしていると思います。私の変数はテーブルデータの配列から読み込んでいるので、テーブルにすべてのアポストロフィの前に "\"を入れることはできません。 $fooに「do not」という文字列が含まれている場合は、文字列を終了させずに正しく'$foo'と言うことができます。ありがとう。PHPで引用符内のアポストロフィを無視するにはどうしたらいいですか?

+0

あなたは_escaping_について学ぶ必要があります。 – SLaks

+1

これはdb関連と思われ、引用符はSQLインジェクションと見なされています。コードの不足のために質問は不明です。いずれにせよ、準備されたステートメントを使用してください。 –

+0

これについて完全なコードを保持するために質問を更新しない場合、私はあなたのために私を助けることはできません。問題は、いくつかの可能な重複で閉じられる可能性もあります。そのために(私は不明である)、私は質問に-1を与えた。 –

答えて

0

あなたはあなたがアポストロフィの前にエスケープ文字(「\」)を追加する必要があることを考えで正しいPHP Manual - Add slashes

$foo = addslashes($foo); 
1

PHPのにaddslashesを使用することができます。

データベースのデータを使ってこれを行うには、関数addslashesを使用できます。そう

$escapedString = addslashes($string); 

また、より高い精度のための機能を置き換える文字列でこれを行うことができます:

$escapedString = str_replace("'", "\'", $string); 
関連する問題