yamata.programmer.blog

28歳 プログラマになるために通った道に落ちていた情報を発信します!

【PHP初心者必見】関数のファイルの読み込み方【簡単な方法を紹介】

今回の記事を読んで欲しい方

  • 処理を共通化して再利用したい方
  • 別ファイルの処理を取り込みたい方

今回はについて書いていこうと思います。

 

外部ファイルを読み込む方法はrequire関数を利用する

プログラムを単一のファイルに書いていくと、次第に膨大な量になり、コードの可読性が落ちます。

同じコードを別ファイルにコピペしたり、修正が発生した時にはそのコピペした箇所全部を直さなければいけませんし、バグが発生した時に発見しづらくなります。

そこで、PHPで関数ファイルを読み込む方法としてrequire関数を使う方法があります。

require関数の書き方

require関数の書き方自体は簡単です。

requre "PHPファイル名";

require("PHPファイル名");

どちらかの書き方でOKです。

同じ階層にあるファイルを指定する場合はこの書き方で大丈夫ですが、別の階層にある場合は、PHPファイル名を書いてある箇所に相対パス絶対パスを指定します。

同じ処理のinclude関数もある

ほぼ同じ処理として、include関数があります。

書き方はrequireと一緒です。

include "PHPファイル名";

include("PHPファイル名");

require_onceとinclude_once

require_once、include_onceは、onceが英語で一度という意味であるように、共にファイルが読み込まれている場合は再読み込みしません。

読み込みが必要なタイミングの行でコードを記述します。

requireとincludeのどちらを使うか

ではどちらを使えばいいのか。結構迷うかと思います。

  • requireは、関数として作ったファイルが読み込めなかった場合に処理が止まる
  • includeは、関数として作ったファイルが読み込めなかった場合でも処理が止まらない(=処理が継続する)

上記の特徴があるので、

  • 読み込みが成功しないと次の処理に行ってはダメな場合はrequire
  • 読み込みが成功しなくても次の処理に行きたい場合はinclude

この違いに気をつけた上で、使い分けを行って下さい。

 

今回のまとめ

require…処理を止めたくない、後に処理を継続させたい場合。関数ファイルを読み込めなかった時に処理を中断させたい場合。

require_once…上記に加えて、1度だけ関数ファイルを読み込ませたい場合。

include…関数ファイルが読み込まれなくても処理を継続させたい場合。関数ファイルが読み込まれなくても特に問題がない場合。

include_once…上記に加えて、1度だけ関数ファイルを読み込ませたい場合。

今回は以上です。