

プログラミングをしていると、別のファイルに書いたコードを読み込んで使いたい場面がたくさんありますよね。
でも、PHPにはファイルを読み込むための方法がいくつか用意されていて、初心者の方はどれを選べばいいのか迷ってしまうことが多いです。
実は、それぞれの読み込み方には明確な違いや役割があるのです。
この記事ではPHPでファイルを読み込む方法について解説していきます。
PHPのファイル読み込みは用途に合わせて使い分けよう

結論から言うと、PHPでファイルを読み込むときは、エラー時の動作と読み込みたい内容によって使い分けるのが正解です。
それぞれの方法には、以下のような特徴があります。
- includeはエラーが出ても処理を続ける
- requireはエラーが出たら処理を止める
- file_get_contentsはファイルの中身を単なる文字として読み込む
この違いをしっかり理解しておくことで、思わぬバグを防ぐことができます。


たとえば、絶対に読み込まないとシステムが動かなくなるような重要なファイルなら、エラーで止まってくれた方が安心ですよね。
逆に、ただのデザインの一部など、なくても最悪システムは動くようなものなら、処理を続けてほしいこともあります。
このように、状況に応じた適切な命令を選ぶことがプログラミングの上達には欠かせません。
includeとrequireの最大の違いはエラーの扱い

PHPでファイルを読み込む際によく使われるのが、includeとrequireです。
これらはどちらも別のPHPファイルを読み込んで実行するための命令ですが、エラーが発生したときのプログラムの動きが決定的に異なります。
もし読み込もうとしたファイルが見つからなかった場合、それぞれの動きは以下のようになります。
- includeの場合は警告を出しつつもその後の処理を実行し続ける
- requireの場合は致命的なエラーとしてプログラムの実行を完全に停止させる


もしデータベースの設定ファイルをincludeで読み込んでしまい、ファイルが見つからなかったらどうなるでしょうか。
プログラムは止まらずに進んでしまうので、後から大量のエラーが発生して原因を突き止めるのが大変になってしまいます。
そのため、システムの中核となる重要なファイルはrequireで読み込むのが基本です。
逆に、ウェブページのフッター部分など、万が一読み込めなくてもページ全体が表示されないよりはマシ、という場合にはincludeが適しています。
// includeの例
include 'footer.php';
// requireの例
require 'database_config.php';
_onceをつけると1回だけ読み込んでくれる

includeとrequireには、それぞれ末尾に_onceをつけた命令が用意されています。
つまり、include_onceとrequire_onceのことですね。
これらは、同じファイルがすでに読み込まれている場合は再読み込みをしないという便利な機能を持っています。
プログラムが複雑になってくると、いろいろな場所で同じファイルを読み込もうとしてしまうことがあります。
- 関数が二重に定義されてエラーになるのを防ぐ
- 無駄な読み込みを減らしてプログラムを軽くする
- 設定が上書きされてしまうのを防ぐ


実際の大規模なシステム開発では、安全性を重視してrequire_onceが一番よく使われます。
毎回ファイルが読み込まれているかを気にしながらプログラミングするのは大変なので、PHPに重複チェックをお任せできる_onceの機能は積極的に活用していきましょう。
// すでに読み込まれていればスキップされる
require_once 'functions.php';
Web制作においてJavaScriptのコードを外部ファイルに分割して読み込む手順については、以下の記事も参考にしてみてください。ブラウザでJavaScriptを実行する3つの方法フロントエンドとサーバー側の両方でファイルを適切に分割・管理できるようになると、保守性の高い開発が行えます。
file_get_contentsは文字として読み込む便利ツール

includeやrequireとは少し毛色が違うのが、file_get_contentsという関数です。
これはPHPのプログラムとして読み込んで実行するのではなく、ファイルの中身を単なる文字のデータとして取得する働きを持っています。
テキストファイルやCSVファイル、あるいはインターネット上のウェブページの内容などを読み込みたいときに大活躍します。
- テキストファイルの中身を変数に入れたいとき
- APIを呼び出してJSONデータを受け取りたいとき
- 外部のサイトのHTML情報を取得したいとき


ただし、この関数でPHPファイルを読み込んでも、プログラムとしては動かず中身のコードがそのまま文字として取れてしまいます。
そのため、PHPのプログラムを分割して読み込みたい場合はincludeやrequireを使い、純粋なデータを読み込みたい場合にfile_get_contentsを使うという使い分けが重要になります。
// テキストファイルの中身を読み込む
$text = file_get_contents('sample.txt');
よくある疑問をすっきり解決

ここまでPHPのファイル読み込みについて解説してきましたが、初心者の方がよくつまずく疑問についてお答えしていきます。
エラーが出たときなど、どう対処していいか迷ったときの参考にしてみてください。


- パスの指定はどうすればいいの?:相対パスと絶対パスのどちらでも指定できますが、システムが複雑になると絶対パスの方が安全です
- file_get_contentsでエラーが出るんだけど?:指定したファイルが存在しないか、URLを読み込む設定がサーバー側で許可されていない可能性があります
- 読み込んだファイルの中の変数は使えるの?:はい、読み込み元のファイルで定義された変数は、読み込んだ先のファイルでもそのまま使うことができます
とくにファイルのパス指定は間違えやすいポイントです。
どうしてもファイルが読み込めないときは、ファイル名が間違っていないか、ファイルが存在する場所が合っているかをよく確認しましょう。
プログラミングのエラーの多くは単純なスペルミスやパスの指定ミスなので、焦らずにチェックすることが大切です。
本格的にプログラミングを学ぶならスクールが近道

PHPのファイル読み込みのように、プログラミングには「似ているけれど使いどころが違う」という技術がたくさんあります。
独学でもコツコツ学ぶことはできますが、現場で本当に使われる正しい知識を身につけるには、プロに教わるのが一番の近道です。
プログラミングスクールなら、経験豊富なエンジニアから直接指導を受けることができます。
- わからないことがあればすぐに質問して解決できる
- 実際の開発現場で使われる最新のスキルが身につく
- 自分専用のカリキュラムで効率よく学習を進められる


とくに一人で学習しているとモチベーションが下がってしまいがちですが、スクールなら最後までやり遂げる環境が整っています。
本気でエンジニアを目指したり、自分のアイデアを形にしたいと考えているなら、プログラミングスクールの活用を検討してみてはいかがでしょうか。
転職保証付きプログラミングスクール DMM WEBCAMP
Skill Hacks
CodeCamp
それぞれの特徴を理解して正しく使いこなそう

この記事では、PHPでファイルを読み込むためのさまざまな方法について解説しました。
一見するとどれも同じように見えますが、エラーの扱いや役割に明確な違いがあることがおわかりいただけたと思います。
重要なファイルにはrequire_onceを使い、純粋なデータにはfile_get_contentsを使うなど、状況に応じた使い分けを意識してみてください。


それぞれの命令の特徴をしっかり理解して、より安全で効率的なプログラミングを楽しんでくださいね。
転職保証付きプログラミングスクール DMM WEBCAMP
Skill Hacks
CodeCamp
PHPやWebプログラミングの実践的な開発手法を最短で身につけたい方は、以下のスクール比較もぜひ参考にしてみてください。プログラミングスクールおすすめ比較|初心者が最短でスキル習得できる選び方とは?疑問点をすぐに質問できる学習環境を選ぶことで、挫折せずにステップアップできます。
