他の話題
- 2016年06月16日
- 他の話題, Web Service
新人奮闘記 1
先日コードを眺めていると、このような記述を目にしてしまった
新人君です。
dirname(__FILE__). “/”;
ん?ファイルパスが略されている!?
意味が分からないので、とりあえずマニュアルを読んでみると、うんたらかんたら。
正直あまりピンとは来なかった!
やっぱりそういう時は、実際にイジってみるのがいいかという事で
とりあえず分解してみます。
検証 1
「dirname()」関数内の引数に使われている、「__FILE__」
PHPで定義済みの定数、マジック定数と呼ばれるものです。
どうやらマニュアルを見てみると、~ファイルのフルパスとファイル名が返されると書いてある。
今回はxampp上にて実行してみる事にします。
ディレクトリは、localhost/workspace/FreeWrite/index.php
index.php
echo __FILE__;
出力結果1
C:\xampp\htdocs\workspace\FreeWrite\index.php
しっかりと実行もとのファイルが
フルパスで表示されています。
検証2
index.php
echo __FILE__dirname(__FILE__);
出力結果2
C:\xampp\htdocs\workspace\FreeWrite
指定したファイルの親ディレクトリが返されています。
お気づきの通り、(\)がありません。
実際これだと、FreeWrite直下のファイルにはアクセスできないので
dirname(__FILE__).”\”; とするのですね。
対象ファイルのパスを毎回、たどっていると、環境の変化があった場合、
わざわざパスを記述し直さなければいけない。そんな手間
を省く事ができそうです。
またdirname(__FILE__)と同等の結果を得られる、マジック定数
__DIR__がphp5.3から追加されました。
こちらも実行してみます。
index.php
echo dirname(__FILE__).”<br>”;
echo __DIR__.”\”;
出力結果3
C:\xampp\htdocs\workspace\FreeWrite
C:\xampp\htdocs\workspace\FreeWrite\
確かに同じ意味となりました。
今後、後者が主流になるでのしょうか、積極的に使っていきたいですね。
keny
admin at 2016年06月16日 10:00:09
- 2013年12月02日
- Android, iOS, Web Service
Google音声検索
SH at 2013年12月02日 10:00:03
- 2013年11月26日
- Web Service
ストレージサービスを一括管理「MultCloud」
Tutomu at 2013年11月26日 10:00:24
- 2013年10月15日
- Web Service
憧れのスーパーカーを見に行ってきました
スーパーカーはお好きですか?
私は大好きです!
カッコいいですよねぇ〜。
華麗な数々のスーパーカーを世に排出してきた、ランボルギーニの博物館がイタリアのサンタアガタ・ボロネーゼにあるのですが、
なんと、その中をGoogle ストリートビューで覗けちゃうんです!
Yohei at 2013年10月15日 10:00:49
- 2013年09月03日
- Web Service
出身地、バレちゃいます!
Yohei at 2013年09月03日 10:00:44