3月 26

この記事をブックマークする : このページをはてなブックマークに追加 このページをLivedoorクリップ! このページをニフティクリップに登録 newsing it! このページをdel.icio.usに登録 このページをBuzzurlにブックマーク

前回はループの構文の使い分けを書きましたが今回は”(ダブルクォーテーション)と’(シングルクォーテーション)についての私がひっかかった事を書きたいと思います。

PHPでは( ” )も( ‘ )も両方文字列を扱う時の引用符です。
( ‘ )は文字列をそのまま文字列として扱いたい時に使用します。
( ” )は中の文字列を評価してくれます。

例えば、
$apple = ‘リンゴ’;
print ‘$apple’;
print “$apple”;
と書くと1つ目のprintでは「$apple」と出力され、2つ目は「リンゴ」と出力されます。
これについては使っている人が多いんではないでしょうか?

で、今回自分がひっかかった事ですが・・・
それは「特殊文字」です。
実はC言語では( ‘ )で囲むのは文字定数といわれる文字1バイト分を表示するのに使います。
その癖でPHPでも(‘\n’)をある関数で渡して処理させていました。

いくつかの関数では文字列を引数として渡す場合に、(‘\n’)を渡すと改行コードとして処理をしてくれたりします。
うまくいったのでその関数をほかの関数に置き換えたのですが思ったように処理してくれない・・・
で、色々やってみるとPHPでは(‘\n’)は(“\\n”)と同義になるようです;;

変数を評価してくれないのは頭では分かっていましたがまさか特殊文字までとは・・・

この記事をブックマークする : このページをはてなブックマークに追加 このページをLivedoorクリップ! このページをニフティクリップに登録 newsing it! このページをdel.icio.usに登録 このページをBuzzurlにブックマーク

Comments are closed.