(PHP)require,includeで相対パスのファイルを指定する場合

今更な話ですが、require , require_once , include , include_once で別ファイルを読み込む時に相対パスを使う時の注意点です。

PHPには、実行したファイルのあるディレクトリがカレントディレクトリになるというルールがあるようです。また、ファイルインクルードの順番ですが、まず指定されたパス→include_path→現在の作業ディレクトリとなるようです。

なので、一旦絶対パスを取得してからファイル名を指定するといいようです。

require_once dirname(__FILE__) .'/util.php' ; //php5.3.0より前のバージョン
require_once __DIR__ .'/util.php' ; //php5.3.0以降のバージョン



参考:
PHPでincludeの時、ファイルパスの指示の仕方。 | WEBデザイン&WEBプログラミング -sei2の日記-
PHP の include, require で相対パスを指定して読み込む場合のメモ - hoge256ブログ
PHP include時のパス解決方法
PHP で 外部ファイルを include したり require する場合は 絶対パスで指定するべきなんだって
[PR]
by Jehoshaphat | 2013-03-19 21:34 | PHP開発 | Trackback | Comments(0)
トラックバックURL : http://jehupc.exblog.jp/tb/19943869
トラックバックする(会員専用) [ヘルプ]
※このブログはトラックバック承認制を適用しています。 ブログの持ち主が承認するまでトラックバックは表示されません。


<< AdobeReader Xをグ... (SunRay)サーバでファー... >>