Một thư mục mới có thể được tạo trong PHP bằng hàm mkdir[]. Hàm này lấy một đường dẫn đến thư mục được tạo. Để tạo một thư mục trong cùng thư mục với tập lệnh PHP của bạn, chỉ cần cung cấp tên thư mục. Để tạo một thư mục mới trong một thư mục khác, hãy chỉ định đường dẫn đầy đủ khi gọi mkdir[]
Đối số thứ hai, tùy chọn cho phép đặc tả các quyền trên thư mục [kiểm soát các vấn đề như liệu thư mục có thể ghi được hay không]
ADSDAQBOX_FLOW
Xóa một thư mục
Các thư mục bị xóa trong PHP bằng hàm rmdir[]. rmdir[] nhận một đối số duy nhất, tên của thư mục sẽ bị xóa. Việc xóa sẽ chỉ thành công nếu thư mục trống. Nếu thư mục chứa các tệp hoặc thư mục con khác thì việc xóa không thể thực hiện được cho đến khi các tệp và thư mục con đó cũng bị xóa
Tìm và thay đổi thư mục làm việc hiện tại
Không chắc rằng một ứng dụng web sẽ có thể thực hiện tất cả các tác vụ liên quan đến tệp của nó trong một thư mục. Vì lý do này, điều quan trọng là có thể tìm ra thư mục làm việc hiện tại và thay đổi sang thư mục khác từ bên trong tập lệnh PHP
Thư mục làm việc hiện tại có thể được xác định bằng hàm getCwd[]
Thư mục làm việc hiện tại có thể được thay đổi bằng hàm chdir[]. chdir[] lấy đối số duy nhất là đường dẫn của thư mục mới
"; chdir ["/tmp"]; $current_dir = getCwd[]; echo "Current directory is now $current_dir
"; ?>
Liệt kê các tập tin trong một thư mục
Các tệp trong một thư mục có thể được đọc bằng hàm PHP scandir[]. scandir[] nhận hai đối số. Đối số đầu tiên là đường dẫn thư mục được quét. Đối số tùy chọn thứ hai chỉ định cách sắp xếp danh sách thư mục. Nếu đối số là 1, danh sách được sắp xếp ngược theo thứ tự bảng chữ cái. Nếu đối số bị bỏ qua hoặc được đặt thành 0, danh sách được sắp xếp theo thứ tự bảng chữ cái
Các hàm thư mục PHP như tên gọi của chúng gợi ý là một tập hợp các hàm được sử dụng để truy xuất chi tiết, sửa đổi chúng và tìm nạp thông tin trên các thư mục hệ thống tệp khác nhau và nội dung cụ thể của chúng. Rất nhiều thao tác có thể được thực hiện trên các thư mục như tạo, xóa, thay đổi thư mục làm việc hiện tại, liệt kê các tệp có trong thư mục, v.v. Không cần cài đặt riêng cho các chức năng này vì chúng là một phần của lõi PHP. Nhưng để kích hoạt chức năng chroot[] chúng ta cần cấu hình tùy chọn –enable-chroot-func
Các chức năng của thư mục PHP
Chúng ta hãy đi qua một vài chức năng thư mục PHP cơ bản như dưới đây
Bắt đầu khóa học phát triển phần mềm miễn phí của bạn
Phát triển web, ngôn ngữ lập trình, kiểm thử phần mềm và những thứ khác
Gói phát triển phần mềm tất cả trong một[hơn 600 khóa học, hơn 50 dự án]
Giá
Xem khóa học
600+ Khóa học trực tuyến. hơn 50 dự án. Hơn 3000 giờ. Giấy chứng nhận có thể kiểm chứng. Truy cập Trọn đời
4. 6 [82.828 xếp hạng]
1. Tạo một thư mục mới
Chúng ta sử dụng hàm mkdir[] để tạo thư mục mới trong script lập trình PHP
cú pháp
mkdir[$dir_path,$mode,$recursive_flag,$context];
ở đâu,
- $dir_path là đường dẫn tương đối hoặc tuyệt đối nơi thư mục mới được chỉ định sẽ được tạo
- $mode là tham số sẽ nhận các giá trị bát phân xác định cấp độ mà thư mục mới được tạo sẽ có thể truy cập được
- $recursive là trường loại cờ có 2 giá trị đúng hoặc sai, có thể cho phép chúng tôi tạo các thư mục lồng nhau hoặc không
- $context tương tự như những gì chúng ta có với PHP unlink[] giống như có một luồng để chỉ định các giao thức nhất định, v.v. Điều này cũng sẽ chỉ trả về một giá trị boolean, giá trị này sẽ đúng nếu quá trình thực thi hoàn tất thành công và sai nếu không
Thí dụ
đầu ra
Đây là một ví dụ cơ bản để hiển thị việc tạo một thư mục trong đường dẫn mà chúng tôi yêu cầu. Đảm bảo rằng đường dẫn có đủ quyền nếu không sẽ xảy ra lỗi "quyền bị từ chối"
2. Liệt kê nội dung của một thư mục
Chúng tôi sử dụng opendir[] và readdir[] để mở liên kết thư mục và đọc nó tương ứng. Bước 1 sẽ là mở thư mục và Bước 2 sẽ là đọc nó
Bước 1. Để mở link thư mục, opendir[] là hàm chúng ta sử dụng để thực hiện bước này. Nó yêu cầu hai đối số đầu vào như được chỉ định bên dưới
cú pháp
opendir[$dir_path,$context];
- $dir_path là đường dẫn của thư mục cần mở
- $context là một tham số tùy chọn mà chúng ta có thể chỉ định xem có luồng ngữ cảnh hay không
Điều này trả về giá trị dữ liệu tài nguyên như đầu ra của nó. ID tài nguyên này mà nó cung cấp được sử dụng trong các bước xử lý tiếp theo của chúng tôi, nếu không, chúng tôi sẽ gặp lỗi vì ID tài nguyên không hợp lệ
Bước 2. Để đọc nội dung của thư mục, readdir[] là hàm được sử dụng cho mục đích này và nó cần được gọi đệ quy cho đến khi kết thúc thư mục được xử lý bởi thư mục
Thí dụ
đầu ra
Trong ví dụ này trước tiên, chúng ta đang khai báo đường dẫn thư mục cần đọc. Chúng tôi đang kiểm tra câu lệnh if nếu có thư mục và sau đó tiếp tục mở nội dung của thư mục và đọc. Đầu ra hiển thị tên tệp có trong thư mục
3. Đóng một thư mục
Chúng tôi sử dụng hàm closedir[] để đóng một thư mục sau khi đọc nội dung của nó
cú pháp
$dir_handle = opendir[$dir_path];
...
...
closedir[$dir_handle];
Thí dụ
________số 8đầu ra
Trong ví dụ này, đầu tiên chúng ta khai báo đường dẫn của thư mục. Sau đó, sử dụng câu lệnh điều kiện if, chúng tôi đang kiểm tra xem đường dẫn có hợp lệ không và nếu có, thì chúng tôi sẽ mở thư mục, đọc các biến của nó và sau đó đóng nó. Do đó, bất kỳ thao tác nào cũng có thể được thực hiện giữa việc mở và đóng thư mục
4. Để thay đổi thư mục hiện tại
Chúng tôi sử dụng chức năng chdir[] để thay đổi thư mục làm việc hiện tại mà nó đang trỏ đến
cú pháp
chdir[directory]
Nó chỉ yêu cầu một tham số là thư mục mà thư mục làm việc hiện tại sẽ được trỏ tới. Nó trả về true nếu thành công và false nếu thay đổi thư mục không thành công
Thí dụ
0
đầu ra
Trong ví dụ này, trước tiên chúng tôi in thư mục làm việc hiện tại. Sau đó, chúng tôi đang thay đổi tương tự bằng cách sử dụng chức năng chdir thành thư mục “kiểm tra” và in tương tự trên đầu ra. Do đó, hãy chắc chắn rằng toàn bộ đường dẫn chúng tôi đang đưa ra ở đây tồn tại
5. Để thay đổi đường dẫn thư mục gốc
Chúng tôi sử dụng hàm chroot[] để thay đổi thư mục gốc của quy trình đang diễn ra thành đường dẫn thư mục mà chúng tôi chuyển làm đối số trong hàm này. Ngoài ra, đường dẫn thư mục làm việc hiện tại sẽ được thay đổi thành “/”. Để thực hiện chức năng này, người ta cần có quyền/đặc quyền root
cú pháp
1
Thí dụ
2
đầu ra
Trong ví dụ này, trước tiên chúng ta sử dụng hàm chroot để thay đổi đường dẫn của thư mục gốc. Tiếp theo, chúng tôi đang hiển thị thư mục làm việc hiện tại sẽ được thay đổi thành đường dẫn về nhà
6. Để Đặt lại Xử lý Thư mục
Với mục đích này, chúng tôi đang sử dụng hàm rewinddir[] có thể đặt lại xử lý thư mục được tạo ban đầu bởi hàm opendir[]
cú pháp
0Nó chỉ chấp nhận đường dẫn thư mục làm đối số đầu vào của nó, được sử dụng để báo đường dẫn tài nguyên xử lý thư mục đã được mở bằng opendir[] trước đó. Đây là một tham số tùy chọn mà nếu không được chỉ định thì liên kết trước đó được sử dụng bởi opendir[] sẽ được xem xét
Thí dụ
1đầu ra
Trong ví dụ này trước tiên, chúng tôi chỉ định đường dẫn thư mục và câu lệnh if chúng tôi đang sử dụng để xác minh xem đường dẫn thư mục có tồn tại hay không. Nếu có thư mục thì chúng tôi sẽ mở và đọc nội dung của tệp và in tương tự. Bây giờ trình xử lý tệp sẽ ngừng in vì nó đã đến cuối con trỏ tệp. Khi chúng tôi sử dụng chức năng rewinddir[], nó sẽ đặt lại trình xử lý tệp và do đó khi chúng tôi in nội dung thư mục, nó sẽ in lại cùng một đầu ra
Sự kết luận
Chúng ta đã điểm qua một số hàm thư mục PHP cơ bản và quan trọng thường được sử dụng trong bài viết này. Chúng tôi cũng nhận thấy rằng một số chức năng này phụ thuộc vào nhau. Ví dụ: chúng ta không thể sử dụng readdir[] mà không sử dụng opendir[]. Vài chức năng khác được sử dụng là dir[], scandir[] và getcwd[]
Bài viết được đề xuất
Đây là hướng dẫn về Thư mục PHP. Ở đây chúng tôi thảo luận về Giới thiệu và chúng tôi đã học cách hiển thị tất cả các tệp trong một thư mục của trang web bằng PHP. Bạn cũng có thể xem các bài viết sau để tìm hiểu thêm –