基礎

PHPの文字列結合|ドット演算子の使い方

PHPでは、ドット演算子(.)を使って文字列を結合します。他の言語では + を使うことが多いですが、PHPでは + は数値の加算に使われるため、文字列結合には専用のドット演算子を使います。

基本的な使い方

PHP
<?php
$first = "Hello";
$second = "World";

// ドット演算子で結合
$greeting = $first . " " . $second . "!";
echo $greeting;
?>
実行結果
Hello World!

ドット演算子は文字列同士だけでなく、数値を文字列に変換して結合することもできます。

PHP
<?php
$name = "太郎";
$age = 25;

// 文字列と数値の結合(数値は自動で文字列に変換される)
echo $name . "さんは" . $age . "歳です。";
echo "<br>";

// 複数行にわたる結合
$message = "商品名: りんご" . "<br>"
         . "価格: 150円" . "<br>"
         . "在庫: あり";
echo $message;
?>

結合代入演算子(.=)

既存の変数に文字列を追加する場合は、結合代入演算子 .= を使います。

PHP
<?php
$html = "<ul>";
$html .= "<li>りんご</li>";
$html .= "<li>バナナ</li>";
$html .= "<li>みかん</li>";
$html .= "</ul>";

echo $html;
?>

$html .= "文字列"$html = $html . "文字列" の省略形です。HTML文字列の組み立てやログメッセージの構築でよく使います。

+演算子と間違えない

"5" + "3" は文字列結合ではなく数値の加算(結果: 8)になります。文字列結合は必ずドット演算子(.)を使ってください。JavaScriptやPythonからの移行者が特に間違えやすいポイントです。

文字列結合 vs 文字列展開

単純な変数の埋め込みには、ドット演算子よりダブルクォーテーション内の変数展開"こんにちは{$name}さん")の方が読みやすくなります。次の記事で解説します。

まとめ

  • PHPの文字列結合はドット演算子(.)を使う
  • 結合代入演算子(.=)で既存の文字列に追加できる
  • +は数値加算であり、文字列結合ではないので注意