今日の人気記事

  1. PHP + Apache 環境の構築
  2. require、require_once - ファイルの取り込み
  3. 数値の小数点以下を処理(四捨五入・切り捨て・切り上げ) - round関数、floor関数、ceil関数
  4. ファイルから1行ずつ読み込む - fgets()
  5. MySQLサーバーへの接続を閉じる(手続き型) - mysqli_close()

ヒアドキュメント

当ページのリンクには広告が含まれています。

ここではPHPスクリプトの「ヒアドキュメント」について解説します。

「ヒアドキュメント」は長い文字列を変数に代入したり、出力する場合に使います。PHPスクリプトからHTMLを出力する場合などに便利なので手法なので、覚えておきましょう。

ヒアドキュメント

長い文字列を変数に代入する場合は以下のような書式で記述します。

<?php
$変数 = <<<終了の文字列

「文字列を記述」

終了の文字列;
?>
※ 終了の文字列には大文字のアルファベットを使います。よく見かけるのは「EOM」「EOF」「EOD」ですが、「ABC」でも何でも構いません。
ちなみに「EOM」は End Of Message、「EOF」は End Of File、「EOD」は End Of Document の略です。

サンプルスクリプト

それではヒアドキュメントのサンプルスクリプトをみてみましょう。まずは長い文字列を変数に格納するサンプルスクリプトです。

<?php
$str = <<<EOM
変数に
ながーーーーい文字列を
格納します。
EOM;

echo $str;
?>

実行結果です。変数に格納された長い文字列が出力されていますね。

変数に
ながーーーーい文字列を
格納します

次は長い文字列をそのまま出力する書式をみてみましょう。変数に格納するところが「echo」に変わるだけです。

<?php
echo <<<終了の文字列

「文字列を記述」

終了の文字列;
?>

それではサンプルスクリプトをみてみましょう。

<?php
echo <<<EOF
出力する
ながーーーーい文字列を
記述します。
EOF;
?>

実行結果は以下のようになります。

出力する
ながーーーーい文字列を
記述します。

ヒアドキュメント内での「エスケープシーケンス(特殊文字)」と「変数」の挙動を確認するサンプルスクリプトです。

<?php
$str_name = "太郎";
echo <<<ABC
ヒアドキュメント\nです。
こんにちは。$str_name だよ。
ABC;
?>

実行結果です。このようにヒアドキュメント内の特殊文字と変数は展開され、値が表示されます。

ヒアドキュメント
です。
こんにちは。太郎 だよ。

次は特殊文字と変数を展開しない「Nowdoc(Newdoc)」をみてみましょう。

文字列 の人気記事

  1. ヒアドキュメント
  2. require、require_once - ファイルの取り込み
  3. ファイルの読み込み
  4. 文字列 - string
  5. HTMLエンティティを文字列に変換 - html_entity_decode()
  6. HTML内でPHPスクリプトを実行 - 埋め込み
  7. 簡単なPHPスクリプトを動かしてみよう
  8. NULL - ヌル
  9. ファイルの書き込み
  10. 文字列を追加し、指定した文字列の長さにする - str_pad関数

関連記事(一部広告含む)