0

従来の関数でスラッシュを削除しようとしていますが、stripslashes奇妙な結果が得られています。

echo stripslashes('\\\\');

これは私に与えます:\

echo stripslashes('\\\\\\\\\\\\');
// there should be 12 slashes above

これは私に与えます:(\\\ここには3つのスラッシュがあるはずです。SOでさえそれで奇妙です)

スラッシュを2倍食べています>。<

ただし、同じ入力をhttp://www.tools4noobs.com/online_php_functions/stripslashes/に接続すると、結果は正常に表示されますか?

誰が何が起こっているのか知っていますか?どうすればストリップスラッシュの食欲を制御し、これらのスラッシュをダブルゴブリングするのをやめさせることができますか?

4

1 に答える 1

1

バックスラッシュ\は、それに続く1文字をエスケープします。バックスラッシュを印刷するには、次の2つが必要です。

\\

\\\\各バックスラッシュはそれに続くバックスラッシュをエスケープするため、2つのバックスラッシュが与えられます。

stripslashes('\\\\');残りの2つから1つのバックスラッシュを取り除きます。

于 2013-02-05T06:30:50.253 に答える