PHP文字列の基本
PHPの文字列について、基本的なことを記載。
PHP: 文字列 - Manual
引用符による違い
引用符
シングルクォーテーションによる文字列定義では、エスケープや変数展開がされない。
バックスラッシュ、シングルクォーテーション自体のエスケープ程度。
$myName = 'Taro'; echo 'My name is $myName.'; // 出力:My name is $myName.
二重引用符
ダブルクォーテーションによる文字列定義では、エスケープや変数展開が行われる。
$myName = 'Taro'; echo "My name is $myName."; // 出力:My name is Taro.
Nowdocとヒアドキュメント
引用符で囲まずに文字列を定義する方法。
Nowdoc
シングルクォーテーションと同様に、エスケープや変数展開がされない。
$nowDoc = <<<'EOD' Hi! I am $myName!! Nice to meet you!!! EOD; echo $nowDoc; // Hi! I am $myName!! // Nice to meet you!!!
ヒアドキュメント
ダブルクォーテーションと同様に、エスケープや変数展開が行われる。
$hearDoc = <<<EOH Hi! I am $myName!! Nice to meet you!!! EOH; echo $hearDoc; // Hi! I am Taro!! // Nice to meet you!!!
複雑な (波括弧) 構文
「{~}」を使って複雑な式を文字列定義の中に含めることができる。
$ary = array('key1'=>'val1', 'key2'=>'val2'); echo "value of key1 is {$ary['key1']}."; // value of key1 is val1.