Thư mục hiện tại PHP

Có một số cách để lấy thư mục làm việc hiện tại trong PHP tùy thuộc vào những gì bạn đang làm việc. Nói chung, bạn muốn sử dụng các phương pháp này để lập trình tìm ra tập lệnh đang chạy nằm trong thư mục nào

Thư mục làm việc hiện tại Sử dụng hàm PHP getcwd[]

Hàm PHP này trả về thư mục làm việc hiện tại nếu thành công và sai nếu thất bại. Hàm được gọi không có tham số

Trên một số biến thể Unix, getcwd[] sẽ trả về false nếu bất kỳ một trong các thư mục mẹ không được đặt chế độ tìm kiếm hoặc có thể đọc được, ngay cả khi thư mục hiện tại có.

Ví dụ

echo getcwd[];

Ví dụ trên sẽ xuất ra một cái gì đó tương tự như

/path/to/folder

Thư mục làm việc Sử dụng hàm dirname[] PHP

hàm dirname trả về đường dẫn của thư mục mẹ hoặc tùy thuộc vào các tham số mà bạn có thể xác định đường dẫn mẹ mà bạn muốn trả về bao xa

Để lấy thư mục hiện tại bằng dirname[], bạn cần thêm hằng số FILE được xác định trước PHP hoặc PHP_SELF

Ví dụ

require_once dirname[__FILE__] . '/folder/script.php';
echo dirname[$_SERVER[PHP_SELF]];

Một trong những ví dụ trên sẽ xuất ra một cái gì đó tương tự như

/path/to/folder

Sử dụng hàm cơ sở [] PHP

Hàm tên cơ sở trả về thành phần tên theo sau của đường dẫn

Ví dụ

echo "1] ".basename["/path/to/folder", ".d"].PHP_EOL;
echo "2] ".basename["/path/to"].PHP_EOL;
echo "3] ".basename["/path/"].PHP_EOL;

Các ví dụ trên sẽ xuất ra một cái gì đó tương tự như

1] folder
2] to
3] path

Phần kết luận

Bây giờ bạn đã học được ba cách để lấy thư mục làm việc hiện tại trong PHP

Tìm thấy bài viết này thú vị?

  • Trang Chủ
  • Trang chủ PHP
  • Tham chiếu hàm PHP
  • ▼Chức năng thư mục
  • chdir
  • chroot
  • thư mục
  • đóng cửa
  • getcwd
  • thư mục mở
  • thư mục đọc
  • tua lại
  • người quét

PHP. chdir[] functionCập nhật lần cuối vào ngày 19 tháng 8 năm 2022 21. 50. 39 [UTC/GMT +8 giờ]

Sự miêu tả

Hàm chdir[] được sử dụng để thay đổi thư mục làm việc hiện tại thành một thư mục được chỉ định

Phiên bản

[PHP 4 trở lên]

cú pháp

chdir[dir_name]

Tham số

NameDescriptionRequired /
OptionalTypedir_nameThư mục hiện tại mới. Chuỗi bắt buộc

Giá trị trả về

TRUE khi thành công hoặc FALSE khi thất bại

Loại giá trị. Boolean

Ví dụ


Xem thêm

Tham chiếu hàm PHP

Trước. thời gian
Tiếp theo. chroot



PHP. Lời khuyên trong ngày

PHP. Tìm phần tử cuối cùng của một mảng trong khi sử dụng vòng lặp foreach trong PHP

________số 8

Điều đó đang được nói, bạn không cần phải lặp lại một "mảng" bằng cách sử dụng foreach trong php

Giới thiệu. https. //chút. ly/3nEHqwB

 

  • bài tập. Top 16 chủ đề phổ biến nhất hàng tuần
  • Bài tập SQL, Thực hành, Lời giải - THAM GIA
  • Bài tập, Thực hành, Giải pháp SQL - SUBQUERIES
  • JavaScript cơ bản - Bài tập, Thực hành, Lời giải
  • Mảng Java. Bài tập, Luyện tập, Lời giải
  • Bài Tập Lập Trình C, Thực Hành, Lời Giải. Tuyên bố có điều kiện
  • Cơ sở dữ liệu nhân sự - SORT FILTER. Bài tập, Luyện tập, Lời giải
  • Bài Tập Lập Trình C, Thực Hành, Lời Giải. Chuỗi
  • Kiểu dữ liệu Python. Từ điển - Bài tập, Thực hành, Lời giải
  • Câu đố lập trình Python - Bài tập, Thực hành, Giải pháp
  • Mảng C++. Bài tập, Luyện tập, Lời giải
  • Câu lệnh điều kiện và vòng lặp JavaScript - Bài tập, Thực hành, Lời giải
  • Thuật toán cơ bản C# Sharp. Bài tập, Luyện tập, Lời giải
  • Python Lambda - Bài tập, Thực hành, Giải pháp
  • Khung dữ liệu Python Pandas. Bài tập, Luyện tập, Lời giải
  • Công cụ chuyển đổi
  • JavaScript. Xác thực biểu mẫu HTML

Tôi thường thấy rằng những thứ đơn giản là những thứ bị lãng quên hoặc không biết nhất. Gần đây, tôi đang giúp đồng nghiệp học PHP và tôi thường được hỏi về cách di chuyển lên và xuống các cấp độ thư mục liên quan đến tệp hiện tại

Tôi biết hai cách tương đối đơn giản để thực hiện việc này; .
and one using realpath[].

Chúng tôi cũng sẽ sử dụng 'Hằng số ma thuật' trong bài đăng này, nhưng tôi đã giải thích những điều này một chút ở đây một cách khéo léo

Cấp thư mục sử dụng dirname[]

Nếu bạn đang sử dụng PHP 7. 0 trở lên thì cách tốt nhất để điều hướng từ đường dẫn tệp hoặc thư mục hiện tại của bạn là sử dụng dirname[]. Hàm này sẽ trả về thư mục mẹ của bất kỳ đường dẫn nào chúng ta chuyển đến nó. Trong PHP 7 trở lên, chúng tôi có thể chỉ định số lượng cấp độ chúng tôi muốn di chuyển. Để sử dụng điều này, trước tiên chúng tôi chuyển đường dẫn tệp hoặc thư mục dưới dạng một chuỗi, sau đó chỉ định số cấp chúng tôi muốn chuyển lên từ thư mục đó

Giả sử rằng tập lệnh của chúng ta đang chạy trong /path/to/file/index. php

$dir = dirname[__DIR__, 2];

echo $dir; // Result = "/path"

Bằng cách sử dụng 'Magic Constant' '__DIR__' và chỉ định cấp độ 2, chúng tôi đang yêu cầu dirname[] trả về 2 cấp độ từ cấp độ gốc của '__DIR__'. Trong trường hợp này '__DIR__' là '/path/to/file', nên cao hơn 2 cấp là '/path'

Nhớ. dirname[] trả về thư mục mẹ, vì vậy sử dụng ‘dirname[__DIR__]’ sẽ trả về thư mục mẹ của ‘__DIR__’

Nếu chúng ta sử dụng '__FILE__' thì hơi khác một chút

/path/to/folder
0

Vì '__FILE__' trả về tệp trong chuỗi, nên thư mục mẹ là '/path/to/file'. Bằng cách chỉ định mức 2, giờ đây chúng tôi chuyển sang ‘/path/to’ thay vào đó

Các cấp thư mục sử dụng realpath[]

Nếu bạn đang sử dụng phiên bản PHP cũ hơn thì may mắn thay, chúng ta có thể sử dụng realpath[]

'Magic Constant' '__DIR__' đã được thêm vào PHP trong 5. 3, vì vậy đối với người 5. 3 đến 5. 6 chúng ta có thể di chuyển các cấp thư mục như thế này

Một lần nữa, giả sử rằng tập lệnh của chúng ta đang chạy trong /path/to/file/index. php

/path/to/folder
1

Trong ví dụ này, realpath[] giải quyết tham chiếu ‘/. ’ liên quan đến ‘__DIR__’ và đưa chúng tôi lên 1 cấp cao hơn. Nếu chúng ta sử dụng ‘/. /. ’ sau đó chúng tôi sẽ chuyển lên 2 cấp cao hơn, v.v.

Nếu chúng ta quay trở lại xa hơn PHP 5. 3 thì chúng ta sẽ phải sử dụng realpath[], dirname[] và ‘Magic Constant’ ‘__FILE__’

Về cơ bản, realpath[] sẽ không chấp nhận tệp, chỉ chấp nhận đường dẫn. Điều này có nghĩa là chúng ta phải xóa 'chỉ mục. php' từ chuỗi '__FILE__' của chúng tôi. Có một số cách mà chúng ta có thể đạt được điều này, một trong số đó là sử dụng dirname[]

/path/to/folder
2

Ví dụ này lấy thư mục mẹ của ‘__FILE__’ và sau đó giải quyết ‘/. ’ sử dụng realpath[] để di chuyển nó cao hơn 1 cấp

Làm cách nào để kiểm tra thư mục hiện tại trong PHP?

Hàm getcwd[] trả về thư mục làm việc hiện tại.

__ dir __ trong PHP là gì?

Có thể sử dụng __DIR__ để lấy thư mục làm việc của mã hiện tại . Nó đã được giới thiệu trong PHP bắt đầu từ phiên bản 5. 3. Nó tương tự như sử dụng dirname[__FILE__]. Thông thường, nó được sử dụng để bao gồm các tệp khác có trong một tệp được bao gồm.

Làm cách nào để lấy thư mục của tệp trong PHP?

Để lấy đường dẫn thư mục gốc, bạn có thể sử dụng _DIR_ hoặc dirname[] . echo dirname[__FILE__]; .

Làm cách nào để có được đường dẫn máy chủ hiện tại trong PHP?

Hiển thị hoạt động trên bài đăng này. .
Để có được thư mục làm việc hiện tại của bạn. getcwd[] [tài liệu]
Để lấy thư mục gốc của tài liệu. $_SERVER['DOCUMENT_ROOT'] [tài liệu]
Để lấy tên tệp của tập lệnh hiện tại. $_SERVER['SCRIPT_FILENAME']

Chủ Đề