重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

PHPで文字列内で(※だぶるクオーテーションおよびシングルクオーテーション)使用するエスケープシーケンスについて、質問です。

PHPでは例えば \(※バックスラッシュ)を文字列内に含めるときバックスラッシュを二つ続けて入力して
print "\\";
上記の用に記述することになると思いいます。
ただ、上記とは違い 
print "  \ ";
と上記のようにバックスラッシュの前後にスペースをおいて
print することでバックスラッシュをエスケープせずに出力させることができます。

本当はものすごく基本的な動作だと思うのですが、
ちょとこの動きが理解できません。
オライリー本をみてもバックスラッシュはエスケープしないといけないと
記載があります。
よろしくご教授ください。

A 回答 (2件)

そういうことです。


ただ、今は「この他の文字」かもしれませんが、将来「特殊文字」側になるかもしれません。その表でも\eが5.4.0より前では「この他の文字」、5.4.0以降は「特殊文字」になっています。
なので、基本通り\\とするのが無難です。
    • good
    • 0

http://www.php.net/manual/ja/language.types.stri …
> この他の文字をエスケープしようとした場合には、 バックスラッシュも出力されます!

この回答への補足

早速の、ご回答ありがとうございます。

お答え頂いたないようですが、
つまりこの
print " \ ";
上記の状態って
スペースをエスケープしようとしており・・・・
つまり、PHPマニュアルに乗っているエスケープが必要な
項目以外に該当するということでしょうか?

補足日時:2012/03/23 23:12
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!