機能をファイルに分ける_PHP
機能をファイルに分ける(PHPのinclude/require)
プログラムを組む際に機能が増えてきたとき、1つのファイル内での管理では限界がきてしまいます(可読性がなくなる、メンテナンスがしにくい)。そこで、C言語ではinclude(Javaではimport)でファイルを分けることになります。Flashでもincludeですね。
PHPの場合は、似たようなものが「include」「require」「include_once」「require_once」のように多岐にわたっています。
「include_once / require_once」は、1回だけ読み込まれるという仕様となります。同じPHPファイルを2回以上呼び出すことにより、変数初期化などでのバッティングをしないようにします。C言語で言う、
#ifndef _XXXX_H #define _XXXX_H // 何か定義を行う #endif
ですね。
「include」と「require」の違いは、includeはエラー時にエラー部分はWarning扱いになり、処理自身はそのまま続行されます。requireの場合は、エラー時はそこで処理が中断します。
たとえば以下の場合は「function.php」「main.php」の2つのファイルを作成してmain.phpからfunction.phpを呼び出しています。
// [ function.php ] <?php function add($a, $b) { return($a + $b); } ?>
// [ main.php ] <?php require('function.php'); $ret = add(10, 5); print("ret = $ret<br>\n"); ?>
これを実行すると、「ret = 15」と出力されます。
このように機能別にファイルを分けることで、大きなシステムを組む場合の効率化を行います。よく使う機能を別ファイルにしてライブラリ化っぽくする、ということもできそうですね。
Future's Laboratory 技術格納庫 2004-2013 Yutaka Yoshisaka.