2012-01-23 34 views
9

Tôi muốn lấy tên của thư mục mẹ mà tập lệnh hiện đang chạy trong thư mục?Cách lấy tên của thư mục mẹ trong thư mục nơi tập lệnh đang chạy trong php?

nếu chúng tôi có một tập lệnh được gọi là foo.php với đường dẫn "/Users/Somone/Sites/public/foo.php", làm cách nào tôi có thể truy cập "công khai" ra khỏi đường dẫn tệp đó chứ không phải toàn bộ cây thư mục?

mọi trợ giúp sẽ tuyệt vời.

cảm ơn.

+2

Tôi không thể downvote, điều này có đã được hỏi và có rất nhiều liên kết đến nó nếu bạn thực hiện tìm kiếm trên google. [http://stackoverflow.com/questions/1882044/get-parent-directory-of-running-script] – bowlerae

+0

Tôi đánh giá cao việc bạn gọi tôi là ngu ngốc. Tôi đã không thể tìm thấy một giải pháp cho điều này do đó tôi được đăng ở đây. – Moshe

+0

Và tôi đã xem qua bài đăng bạn đã liên kết trước khi tôi đăng và không thấy nó hữu ích. – Moshe

Trả lời

4
echo basename(__DIR__); 

Edit: Dường như __DIR__ không bao gồm dấu phân cách thư mục đuôi, do đó, cuộc gọi substr() là không cần thiết.

14

Cách đơn giản nhất để làm điều đó:

basename(__DIR__); 

Như @mario sagely lưu ý, đây chỉ là có thể với PHP 5.3+, vì vậy nếu bạn đang mắc kẹt với 5,2 hoặc ít hơn ... cũng ... bạn nên chuyển sang một máy chủ lưu trữ mới và ngừng sử dụng phần mềm cũ.

+0

Đây chắc chắn là cách đơn giản nhất để làm điều đó. cảm ơn – Moshe

+0

Bao gồm sử dụng đường dẫn đến bao gồm thay vì đường dẫn của tệp mà chúng được đưa vào ... bất kỳ ý tưởng nào? –

1

này đã làm việc cho tôi:

trim(strrchr(__DIR__, DIRECTORY_SEPARATOR), DIRECTORY_SEPARATOR);

+0

Hoạt động hoàn hảo, cảm ơn bạn! – redaxmedia

1
//on windows server 
$cur_dir = explode('\\', getcwd()); 
$sector=$cur_dir[count($cur_dir)-2]; 
echo $sector; 
    //on linux server 
$cur_dir = explode('/', getcwd()); 
$sector=$cur_dir[count($cur_dir)-2]; 
echo $sector; 

Thay đổi thư mục cha làm thế nào bạn cần: -2, -3, -4

+0

Điều này đã được hỏi hơn 3 năm trước và người dùng đã không thể nỗ lực giải quyết vấn đề này, vui lòng luôn luôn tìm kiếm vào ngày câu hỏi được hỏi. – Bonatti

Các vấn đề liên quan