PHP 相対パス指定で読込みエラー

2011/06/06

includeでファイル読込み(相対パス)をしようとしたら「そんなファイルは無い」って怒られた。

修正内容

require_once '../config.php';

require_once dirname(__FILE__) . '/../config.php';

「dirname(__FILE__)」を最初につけて、相対パスの前に「/」をつけた。

エラー内容とか

怒られた内容は下記のような感じ。

Warning: include ‘../xxxx.php’; [function.include]: failed to open stream: No such file or directory in xxxx.php on line 2

パスの指定先に対象のファイルは存在する。
アレコレ調査すると「PHPの規則」と「相対パス」に問題があるらしい。

「PHPの規則」と「相対パス」

PHPの規則に下記があるらしい。

実行したファイルのあるディレクトリが常に実行時のカレントディレクトリになる。

細かいことはとりあえず気にしない。要はincludeにしろrequireにしろ絶対パスにするか最初に記述したようにひと手間をかければいいってことだね。

参考:PHP の include, require で相対パスを指定して読み込む場合のメモ

新着(ニュース関連以外)

2018-07-26
年賀状で「新春」とか書くけど・・・何故なんだろうと8月を目前にした今、疑問に思った。
2018-05-16
PHPで画像のヘッダ情報(?)の「Orientation」を元に画像回転させたい。
2018-03-05
Android Studioをインストール。エミュレータを軽くするトコまで終わらせたかったけど、挫折した。
2018-02-23
プッシュ通知について調べてた時にでてきたServiceWorker。そのServiceWorkerについてのメモ。
2017-12-13
jqueryで取得したDOM要素をオブジェクトじゃなくて、配列で受け取りたい