サンプル集 |
■VC ■C# ■Java ■BorlandC ■LinuxC ■MS-DOS ■bash ■Excel VBA ■VBScript ■PHP ■HTML ■perl ■iPhone ■Android ■Lua ■other |
Linuxコマンド |
用語集 |
debian メモ |
apache2 メモ |
MySQL メモ |
Oracle メモ |
HOME |
外部ファイルを取り込むのには、include、require を使います。 include はファイルが無くても続行し、require はエラー終了するのでテストしてみます。
◆環境OS | Windows XP Professional Version 2002 Service Pack 2 |
---|---|
PHP | 5.2.4 |
まずは include。
include.php | ||
|
>php include.php
Warning: include(inc.inc): failed to open stream: No such file or dire
ctory in include.php on line 2
Warning: include(): Failed opening 'inc.inc' for inclusion (include_pa
th='.;C:\php5\pear') in include.php on line 2
include test
>
Warning: include(inc.inc): failed to open stream: No such file or dire
ctory in include.php on line 2
Warning: include(): Failed opening 'inc.inc' for inclusion (include_pa
th='.;C:\php5\pear') in include.php on line 2
include test
>
取り込むファイル「inc.inc」が無くても処理が実行されました。
次は require を試します。
require.php | ||
|
>php require.php
Warning: require(inc.inc): failed to open stream: No such file or dire
ctory in require.php on line 2
Fatal error: require(): Failed opening required 'inc.inc' (include_pat
h='.;C:\php5\pear') in require.php on line 2
>
Warning: require(inc.inc): failed to open stream: No such file or dire
ctory in require.php on line 2
Fatal error: require(): Failed opening required 'inc.inc' (include_pat
h='.;C:\php5\pear') in require.php on line 2
>
エラーメッセージが少し違って、そのまま終了しました。
外部ファイルの取り込みは一番上じゃないとダメだと思い込んでいましたが、スクリプトの途中でもincludeできるようです。
include2.php | ||
|
dsp_msg.php | ||
|
>php include2.php
dsp_msg php!!
main php
dsp_msg php!!
>
dsp_msg php!!
main php
dsp_msg php!!
>
require_once というのもあります。 これは、同じファイルなら1回しか読み込まないというもののようです。 関数が定義されているファイルなどを読み込みした場合、include や require で2回以上読み込むと、関数の再定義エラーになってしまいます。
require2.php | ||
|
func.php | ||
|
>php require2.php
hello function!!
Fatal error: Cannot redeclare msg() (previously declared in func.php:4) in func.php on line 5
>
hello function!!
Fatal error: Cannot redeclare msg() (previously declared in func.php:4) in func.php on line 5
>
2回目の require でエラーが出ました。 require_once に変えて試してみます。
require_once.php | ||
|
>php require_once.php
hello function!!
proc end.
>
上手くいきました。できれば同じファイルを何度も読み込むような構成にしないように気をつけたいと思います。
Copyright (C) 2013 ymlib.com