はじめに

なんだか長めのコードなどを見ていると、「$html.=」なんてものを目にするのですが、どうも変数の後のドット「.」の意味が分かりませんでした。調べてみると、
「なんだそんなことか」と納得のいくものでした。

Contents

基本的なドットの意味

まず、ドット「.」ですが、これは基本的に文字列の結合を意味します。
結合演算子や、文字列結合演算子というそうです。
はじめは、よく次のような使い方を目にしていました。

$a = "abc";
echo $a."def";

出力結果は、

ですね。まあ、これは問題ないです。
問題の「$変数.=」ですが、実はこれも同じことだったんです。では、詳しく見てみましょう。

「.=」の正体

この「.=」ですが、「結合代入演算子」というそうです。さっそくコードを見ましょう。

$a = "abc";
$a .= "def";
echo $a;

とすると、出力結果は

どうでしょう。「.=」の右側の文字列を、変数に入っている文字列に結合して変数に代入しています。文字列の結合と代入を同時にやっているんですね。

もう少し分かりやすく言うと、
「$a = $a + 1」と「$a += 1」が同じように、
「$a = $a.”def”」と「$a .= “def”」は同じこと表しているということですね。

個人的に非常にすっきりしました。

参考サイト