PHPのこと

【PHP】文字列や変数を連結するには

PHP

文字列および変数の連結は「.」を使う

//文字列の連結
echo "もじ"."と"."もじ"; // => もじともじ

//変数と文字列の連結
$a = 1;
echo "これは".$a; // => これは1

//変数と変数の連結
$a = 1;
$b = "あ";
echo $a.$b; // => 1あ

連結には「.=」を使うこともできる

$a = "もじ1";
$b = "もじ2";

$a .= $b;
echo $a; // => もじ1もじ2

文字列の中で変数を展開することもできる

$animal = "犬";
$name = "はな";
echo "私が飼っている${animal}の名前は${name}です。"

「.」の代わりに「,」で連結するとメモリの無駄がない

$a="長い文字列が入っている。とても長い。ものすごく長い。";
$b="データ的にも大きい。長いと大変メモリを食う。";
$c="連結させて出力したいが消費メモリは極力少ないほうがいい。";
echo $a . $b . $c;
echo $a , $b , $c;

上記2つのecho文はどちらもブラウザ上で同じように表示できる。が、内部の処理として以下の違いがある。

■echo $a . $b . $c;

  1. 3つの変数の結果をそれぞれ文字列で取得する
  2. 取得した3 つの文字列を連結して新しい文字列を生成する
  3. 生成した文字列を表示する

■echo $a , $b , $c;

  1. $aの結果を文字列で表示する
  2. $bの結果を文字列で表示する
  3. $cの結果を文字列で表示する
つぶやき
サーバーへの負荷を考えると「,」のがいいんだけどついつい「.」でつなげちゃうんだよなぁ…

おすすめ