PHP 如何取得 現在檔案的目錄 與 上層目錄

PHP 要取得現在的檔案 路徑 + 檔名, 可以用 PHP 的 Magic constants 來取, 使用 __FILE__ 就可以抓到, 其它可以再搭配 dirname()basename() 來應用.

環境

  • /var/www/project/test.php

取的現在檔案、目錄、上層目錄

於 test.php 內, 要做取得路徑、目錄等, 可見下述:

取得 路徑 + 檔名 (要取得 /var/www/project/test.php)
  • echo __FILE__;
取得 檔名 (要取得 test.php)
  • echo basename(__FILE__);
取得 不含附檔名的檔名 (要取得 test)
  • echo basename(__FILE__, ‘.php’);
取得 到此目錄前的完整 PATH, 不含檔名 (要取得 /var/www/project)
  • echo dirname(__FILE__);
取得 到上層目錄前的完整 PATH (要取得 /var/www)
  • echo dirname(dirname(__FILE__));
應用

同理, 於網址也可以做同樣的事, 此為 CakePHP 的網址: http://www.example.com/myweb/cake/news/view/1, 希望取得 http://www.example.com/myweb/cake 該如何做?

  • echo dirname(dirname(dirname('http://www.example.com/myweb/cake/news/view/1')));
  • 註: 這個方法只是 dirname() 直接拿來應用, CakePHP 應該有更簡易的抓法, 沒去研究就是了. Orz..

发表评论

电子邮件地址不会被公开。 必填项已用*标注