Mam's WebSite
建築CGパース住宅CGパース

Mamの覚書Q&A検索

トップページMamの覚書Q&A検索PHP(基本)⇒Q&A


大項目:「 PHP 」 - 中項目:「 基本 」

「 文字列の扱いについての基本 」

文字列の扱いについての基本は?


回答

以下参照

ソース

ダブルクォートとシングルクォートの違い


①シングルクォートを使った場合、以下の$a変数の値は、「ABC$s」になる。 
$s='abc';
$a='ABC$s';//シングルクォート内にある$sは変数とみなされず、文字列とみなされる。
echo $a;
②ダブルクォートを使った場合、以下の$a変数の値は、「ABCabc」になる。 
$s='abc';
$a="ABC$s";//ダブルクォート内にある$sは変数とみなされて変数展開される。
echo $a;
③シングルクォートを使った場合、エスケープ文字列が展開されず以下の$a変数の値は、「ABC¥n」になる。 
$a='ABC¥n';//シングルクォート内にある$sは変数とみなされず、文字列とみなされる。
echo $a;
④ダブルクォートを使った場合、以下の$a変数の値は、「ABC」+改行コード(正確にはLF[ラインフィーダ chr(10)]) になる。 
$a="ABC¥n";//ダブルクォート内にある$sは変数とみなされて変数展開される。
 


文字列連結(. ドット)


以下は$aも$bも同じ値となる。 
$s='abc';
$a="ABC$s";
$b="ABC".$s;
echo $a."<br>".$b;
 


ダブルクォート内で配列変数を展開する場合は?


以下は$aも$bも同じ値「ABCabcdef」となる。 
$ar=Array();
$ar[0]='abc';
$ar[1]='def';
$a="ABC$ar[0]$ar[1]";
$b="ABC".$ar[0].$ar[1];
echo $a."<br>".$b;
 


ダブルクォート内で連想配列を展開する場合は?


ダブルクォート内で変数を指定するには{}で変数をくくってやればよい。以下は$aも$bも同じ値「ABCabcdef」となる。
$ar=Array();
$ar["a"]='abc';
$ar["b"]='def';
$a="ABC{$ar["a"]}{$ar["b"]}";
$b="ABC".$ar["a"].$ar["b"];
echo $a."<br>".$b;
 


ダブルクォート内でダブルクォート(")を含む文字列を表すには?


¥を使ってエスケープします。 
$ar="文字列内でダブルクォート¥"を使う。";
echo $ar."ダブルクォートの¥"出力¥"ができます。";

Mam's WebSite