PHP tạo thư mục nếu không tồn tại

❮ Tham khảo hệ thống tập tin PHP

Thí dụ

Tạo một thư mục có tên là "kiểm tra"



Định nghĩa và cách sử dụng

Hàm mkdir() tạo một thư mục được chỉ định bởi tên đường dẫn

cú pháp

mkdir(đường dẫn, chế độ, đệ quy, ngữ cảnh)

Giá trị tham số

Tham sốDescriptionpathBắt buộc. Chỉ định đường dẫn thư mục để tạomodeOptional. Chỉ định quyền. Theo mặc định, chế độ là 0777 (truy cập rộng nhất có thể)

Ghi chú. Các tham số chế độ bị bỏ qua trên nền tảng Windows

Thông số chế độ bao gồm bốn số

  • Số đầu tiên luôn bằng 0
  • Số thứ hai chỉ định quyền cho chủ sở hữu
  • Số thứ ba chỉ định quyền cho nhóm người dùng của chủ sở hữu
  • Số thứ tư chỉ định quyền cho mọi người khác

Các giá trị có thể (để đặt nhiều quyền, hãy cộng các số sau)

  • 1 = thực thi quyền
  • 2 = quyền ghi
  • 4 = quyền đọc
đệ quyTùy chọn. Chỉ định nếu chế độ đệ quy được đặt (được thêm vào trong PHP 5)bối cảnhTùy chọn. Chỉ định bối cảnh xử lý tệp. Bối cảnh là một tập hợp các tùy chọn có thể sửa đổi hành vi của luồng (được thêm vào trong PHP 5)

chi tiết kỹ thuật

Giá trị trả về. TRUE khi thành công, FALSE nếu thất bạiPhiên bản PHP. 4. 0+
❮ Tham khảo hệ thống tập tin PHP

Có thể tạo thư mục và đặt quyền thích hợp bằng PHP, cụ thể là sử dụng hàm mkdir()

Chế độ cấp phép mặc định là 0777 (quyền truy cập rộng nhất có thể). Trước khi tạo một thư mục, nó đang nhập để kiểm tra trước xem thư mục hoặc tệp có tồn tại hay không. Trong PHP, nó có thể được thực hiện bằng cách sử dụng file_exists hoặc is_dir

file_exists() để kiểm tra xem tệp hoặc thư mục có tồn tại trong PHP không

Hàm file_exists là một hàm tích hợp để kiểm tra xem thư mục hoặc tệp có tồn tại hay không. Nó chấp nhận một tham số của một đường dẫn trả về true nếu nó đã tồn tại hoặc

$path = "sample/path/newfolder";
if (!is_dir($path)) {
    mkdir($path, 0777, true);
}
0 nếu không

Ví dụ sử dụng file_exists()

$path = "sample/path/newfolder";
if (!file_exists($path)) {
    mkdir($path, 0777, true);
}

Trong ví dụ trên, nó kiểm tra sự tồn tại của thư mục bằng hàm file_exists(), sau đó tạo thư mục

$path = "sample/path/newfolder";
if (!is_dir($path)) {
    mkdir($path, 0777, true);
}
3 nếu kết quả là false, với sự cho phép của 0777

$path = "sample/path/newfolder"; if (!is_dir($path)) { mkdir($path, 0777, true); } 5 để kiểm tra xem tệp hoặc thư mục có tồn tại trong PHP không

Hàm này cũng tương tự như hàm file_exists, và điểm khác biệt duy nhất là nó sẽ chỉ trả về true nếu chuỗi truyền vào là một thư mục và nó sẽ trả về

$path = "sample/path/newfolder";
if (!is_dir($path)) {
    mkdir($path, 0777, true);
}
0 nếu đó là một tệp

Ví dụ sử dụng is_dir

$path = "sample/path/newfolder";
if (!is_dir($path)) {
    mkdir($path, 0777, true);
}

Trong ví dụ trên, is_dir kiểm tra xem thư mục đã tồn tại chưa trước khi tạo thư mục mới bằng cách sử dụng

mkdir($path, $mode, $recursive, $context);
1

file_exists() so với $path = "sample/path/newfolder"; if (!is_dir($path)) { mkdir($path, 0777, true); } 5 trong PHP

Cả hai chức năng đều kiểm tra sự tồn tại của thư mục, sự khác biệt duy nhất là file_exists() cũng trả về true nếu tham số truyền vào là một tệp. Mặt khác, is_dir nhanh hơn một chút so với file_exists

mkdir() bằng PHP

Hàm này tạo một thư mục được chỉ định bởi tên đường dẫn được truyền dưới dạng tham số. Giá trị trả về dự kiến ​​là true hoặc

$path = "sample/path/newfolder";
if (!is_dir($path)) {
    mkdir($path, 0777, true);
}
0

Thực hiện ví dụ

mkdir($path, $mode, $recursive, $context);

Giá trị tham số

Tham sốGiá trịmkdir()1 (bắt buộc)Thư mục hoặc đường dẫn để tạomkdir()2 (tùy chọn)Quyền truy cập thư mục hoặc tệp. Theo mặc định, mkdir()2 là 0777 (quyền truy cập rộng nhất có thể)
mkdir()2 bao gồm bốn số
Thứ nhất - Luôn đặt thành mkdir()6
Thứ 2 - Chỉ định quyền của chủ sở hữu thư mục hoặc tệp
Thứ 3 - Chỉ định quyền của nhóm người dùng của chủ sở hữu
Thứ 4 - Chỉ định sự cho phép của những người khác. mkdir()7 (tùy chọn)(true hoặc
$path = "sample/path/newfolder";
if (!is_dir($path)) {
    mkdir($path, 0777, true);
}
0)
Để tạo cấu trúc lồng nhau, tham số mkdir()7 phải được đặt thành true. 07772 (tùy chọn)Tập hợp các tham số giúp nâng cao hoặc sửa đổi hành vi của luồng

Ghi chú. PHP kiểm tra xem tập lệnh điều hành trong thư mục có cùng UID(chủ sở hữu) trong thư mục hay không khi bật 07773

Làm cách nào để kiểm tra xem thư mục đã tồn tại trong PHP chưa?

Hàm PHP is_dir() . Ghi chú. Kết quả của chức năng này được lưu trữ. Sử dụng clearstatcache() để xóa cache.

Làm cách nào để tạo thư mục trong PHP?

Hàm mkdir() dùng để tạo thư mục trong PHP. Nó là một chức năng sẵn có trong PHP. Hàm mkdir() tạo một thư mục mới với tên đường dẫn đã chỉ định. Đường dẫn và chế độ được gửi dưới dạng tham số cho hàm mkdir() và nó trả về TRUE nếu thành công hoặc FALSE nếu thất bại.

Làm cách nào để tạo thư mục lồng nhau trong PHP?

// Cấu trúc thư mục mong muốn $structure = '. /độ sâu1/độ sâu2/độ sâu3/'; . nếu (. mkdir($struct, 0744, true)) { die('Không thể tạo thư mục. ');

Làm cách nào để tạo một thư mục nếu không tồn tại trong PHP?

Hàm mkdir() tạo thư mục được chỉ định bởi tên đường dẫn.