Webプログラミング研究所〜初心者・中級者Webプログラマ(CGI・Perl・PHP・Javaプログラム言語)のための支援サイト〜 「Webプログラミング研究所」TOPへ 「Webプログラミング研究所」TOPへ
 
「プログラミングサンプル集」TOPへ 「プログラミングサンプル集」TOPへ
 
目次をフレームで表示 目次をフレームで表示
 

ヒアドキュメント

 
概要
Perl、PHPでは、ヒアドキュメントという大変便利な機能があります。
通常は、1行の文字列を表示したり、変数に代入する際は、最後に改行文字「\n」を記述し、ダブルクォーテーション等で囲みます。
複数行の場合は、行の最後に改行文字「\n」を記述し、ダブルクォーテーションで囲む記述を、行数文記述しなければなりません。また、プログラムソースが見づらくなってしまいます。
ヒアドキュメントを使用すると、開始記号と終了記号の間に、複数行の文字を記述した場合、改行は「\n」を使用しなくても、記述したとおりに、プログラム処理系が解釈してくれます。
 
Perl (例) 直接表示する場合
サンプルソース
print <<"EOF";
古池や
 蛙飛び込む
  水の音
EOF

実行結果
古池や
 蛙飛び込む
  水の音

(例) 変数に代入する場合
サンプルソース
$str = <<"EOF";
古池や
 蛙飛び込む
  水の音
EOF
print $str;

実行結果
古池や
 蛙飛び込む
  水の音

キーポイント
サンプルソースに記述してある「EOF」という文字列は、半角英語であれば、OKです。ただし、開始の文字と終了の文字が同じである必要があります。
終了のEOFの文字列の存在する行にはEOF以外は何も記述してはいけません。EOFの左側にスペースやタブ等を記述してもエラーとなります。
PerlとPHPとでは、記述の仕方が全く違いますので注意しましょう。
Perlでは最初のEOFをシングルクォーテーションで囲んだ場合と、ダブルクォーテーションで囲んだ場合とで、処理が異なります。
それは、文字列をシングルクォーテーションとダブルクォーテーションで囲んだ場合と同じ処理です。
EOFをダブルクォーテーションで囲んだ場合は、ヒアドキュメントの中に変数を記述した場合は、展開されて表示されます。
 
PHP (例) 直接表示する場合
サンプルソース
<?php
  print <<<EOF
古池や
 蛙飛び込む
  水の音
EOF;
?>

実行結果
古池や
 蛙飛び込む
  水の音

(例) 変数に代入する場合
サンプルソース
<?php
  $str = <<<EOF
古池や
 蛙飛び込む
  水の音
EOF;
  print $str;
?>

実行結果
古池や
 蛙飛び込む
  水の音

キーポイント
サンプルソースに記述してある「EOF」という文字列は、半角英語であれば、OKです。ただし、開始の文字と終了の文字が同じである必要があります。
終了のEOFの文字列の存在する行にはEOF以外は何も記述してはいけません。EOFの左側にスペースやタブ等を記述してもエラーとなります。
PerlとPHPとでは、記述の仕方が全く違いますので注意しましょう。
 
Java Javaにはヒアドキュメントがありません。
 
NOTE
 
ご意見箱コーナー (管理者宛てメール)
このページは、あなたの参考になりましたか?

参考になった  どちらともいえない  あまり参考にならなかった

ご意見・ご感想・ご要望がありましたら、ご記入いただければ幸いです。
今後のコンテンツ作成、ページ改善等の参考にさせていただきます。

 


Webプログラマになりたい人のためのスクール・講座情報

クリエイターの皆さん!お仕事ありますよ!フェローズに!

パソコンスクールガイド
積極的な情報収集が目標実現の近道です。

就職・起業・SOHO・それとも副業? デジハリがノウハウを伝授!

就転職に強い、資格取得スキルアップ専門校ヒューマンアカデミー

CsideNet レンタルサーバー サブドメイン型 780円/月
CGI/SSI/PHP、データベース(MySQL)が利用できます。1週間の試用期間があるのがGood!!

転職・派遣・就職・アルバイトの求人情報検索支援サイト 〜 14ALL JOB SEARCH 〜
 
 
  「Webプログラミング研究所」TOPへ 「Webプログラミング研究所」TOPへ
 
「プログラミングサンプル集」TOPへ 「プログラミングサンプル集」TOPへ
 
目次をフレームフレームで表示 目次をフレームで表示

Copyright (C) 2004 - 2005 IWAMODE Project All Rights Reserved.