ホームページ >バックエンド開発 >PHPチュートリアル >PHP の文字列操作 (2)
文字列をエスケープして復元するには 2 つの方法があります。1 つは文字列データを手動でエスケープして復元する方法、もう 1 つは文字列データを自動的にエスケープして復元する方法です。
1. 文字列データを手動でエスケープして復元する
文字列は、一重引用符 (')、二重引用符 ("")、区切り文字 ({}) の 3 つの方法で定義できます。文字列を使用する場合、文字列内にこれらの記号と PHP スクリプトを混同する文字が含まれる可能性があるため、エスケープ ステートメントを作成する必要があります。これには、エスケープ記号「」をその前に追加する必要があります。
「」はエスケープ文字であり、「」の直後の文字は意味を持ちません。
例:
<?php echo "I\'m Tom"; ?>
実行結果は次のようになります: 私はトムです。
2. 文字列データの自動エスケープと復元
文字列データの自動エスケープと復元は、PHP が提供するaddslashes()関数とstripslashes()関数を適用することで実現できます。
addslashes() 関数は、文字列にスラッシュ "" を追加するために使用されます。
stripslashes() 関数は、addslashes() 関数を使用してエスケープされた文字列を復元するために使用されます。
例:
<?php $str = "I'm Tom"; $str2 = addslashes($str); //对字符串中的特殊字符进行转义 echo $str2 . "<br />"; echo stripslashes($str2); //将转义后的字符串恢复,然后输出 ?>
実行結果:
I'm Tom
I'm Tom
上記2つの関数は、指定された文字列の自動エスケープと復元を実現します。上記で紹介した方法以外にも、addcslashes()関数やstripcslashes()関数を使用することで、エスケープ・復元する文字列の範囲を限定することができ、指定した範囲内の文字列を自動的にエスケープ・復元することができます。
addcslashes() 関数は、文字列内の文字のエスケープ、つまり指定された文字列の前にバックスラッシュを追加します。
stripcslashes() 関数は、addcslashes() 関数を使用してエスケープされた文字列を復元するために使用されます。
例:
<?php $str = "自学PHP就上PHP中文网"; $str2 = addcslashes($str, "自学PHP就上PHP中文网"); echo $str2 . "<br />"; //输出转义后的字符串 echo stripcslashes($str2); //输出还原后的字符串 ?>
実行結果:
327324321247PHP276315311317321247260311315370
PHP 中国語 Web サイトで PHP を学びましょう
■ PHP の文字列操作(2)の内容については、PHP の中国語 Web サイトに注意してください。その他の関連コンテンツ (www.php.cn)。