PHP のエスケープ文字の問題
インターネットで多くの記事を見つけましたが、どの記事も次のように述べていました:
一重引用符で区切られた PHP 文字列は、\、'
の 2 つのエスケープをサポートします。
区切り文字として二重引用符を使用した PHP 文字列は、\、"、r、n、t、$、[0-7]{1,3}、x[0-9A-Fa-f ]{1,2}
しかし、実際の動作では、これは当てはまりません。次の例は、一重引用符と二重引用符をエスケープします。
テスト結果は次のとおりです:
$single_quote_str = "一重引用符" テスト内の "二重引用符";
$double_quote_str = "「二重引用符」内の「単一引用符」テスト。";
単一引用符のテスト:
元の出力文字列 = 「一重引用符」テスト内の「二重引用符」
エスケープ文字列 = 「一重引用符」内の「二重引用符」
'一重引用符' テスト内の文字列 = "二重引用符" を復元します。
二重引用符のテスト:
元の出力文字列 =「単一引用符」テスト内の二重引用符
。
エスケープ文字列 = "二重引用符"
内の「一重引用符」をテストします。
string="double quote" 内の「single quote」テストを復元します。