Câu trả lời:
getcwd();
hoặc là
dirname(__FILE__);
hoặc (PHP5)
basename(__DIR__)
http://php.net/manual/en/ Chức năng.getcwd.php
http://php.net/manual/en/ Chức năng.dirname.php
Bạn có thể sử dụng basename()
để lấy phần cuối của đường dẫn :)
Trong trường hợp của bạn, tôi muốn nói rằng bạn rất có thể đang muốn sử dụng getcwd()
, dirname(__FILE__)
sẽ hữu ích hơn khi bạn có một tệp cần bao gồm một thư viện khác và được đưa vào một thư viện khác.
Ví dụ:
main.php
libs/common.php
libs/images/editor.php
Trong của common.php
bạn, bạn cần sử dụng các chức năng trong editor.php
, vì vậy bạn sử dụng
common.php
:
require_once dirname(__FILE__) . '/images/editor.php';
main.php
:
require_once libs/common.php
Bằng cách đó khi common.php require'd
ở trong main.php
, lệnh gọi require_once
in common.php
sẽ bao gồm chính xác editor.php
trong images/editor.php
thay vì cố gắng tìm trong thư mục hiện tại nơi main.php
được chạy.
basename(getcwd())
__DIR__
là đường dẫn của tập tin bao gồm và KHÔNG thư mục hiện hành
basename(__DIR__)
tiết kiệm trong ngày cho tôi. Cảm ơn rất nhiều vì đã chia sẻ!
echo basename(__DIR__); will return the current directory name only
echo basename(__FILE__); will return the current file name only
Ví dụ
Your Path = /home/serverID_name/www/your_route_Dir/
NÀY_is_the_DIR_I_Want
Một linh hồn hoạt động:
$url = dirname(\__FILE__);
$array = explode('\\\',$url);
$count = count($array);
echo $array[$count-1];
Trên thực tế, tôi tìm thấy giải pháp tốt nhất là như sau:
$cur_dir = explode('\\', getcwd());
echo $cur_dir[count($cur_dir)-1];
nếu dir của bạn là www \ var \ path \ Current_Path
thì nó trả về Current_path
PATH_SEPARATOR
$myVar = str_replace('/', '', $_SERVER[REQUEST_URI]);
libs / images /index.php
Kết quả: hình ảnh
Nếu bạn có PATH và không muốn lo lắng nếu tập lệnh của bạn hoạt động trong thư mục mà bạn quan tâm thì điều này sẽ giải quyết:
basename(parse_url($_GET['dir_link'])['path'],PHP_URL_PATH)
basename(__DIR__)
bằng PHP 5