PHP | file_exists でよくやるミス

LINEスタンプ「モチの気持ち」© studio doli

LINEスタンプ「モチの気持ち」© studio doli

/*
指定したパス(path)のファイルまたはディレクトリが存在するかを調べます。
存在すれば「true」を、存在しなければ「false」を返します。
*/
file_exists( path )

よくやること、その1。

file_existとタイプすること。
正解はfile_existsです。最後の「s」がよく抜けます。

よくやること、その2。

Webページなどでfile_exists関数を使う際、パスをホスト情報から探そうとしてしまうこと。
見つかりません。

例えば、Wordpressなどのテンプレート上で使う場合ですが、テーマディレクトリ直下に「doli」というディレクトリの存在を確認したいときは…

//よくやってしまうパスの指定 (間違い)
$path = get_template_directory_uri() . "/doli";
//正しくはこちら(正解)
$path = get_template_directory() . "/doli";
//現在のファイルからの相対的なパスを指定したい場合はこちら
$path = dirname( __FILE__ ) . "/doli"; //同じ階層の場合です

ちゃんとサーバーのルートからのパス情報を与えないといけません。

我ながらホントに進歩がなくてガッカリするわ。

備忘録 |