Hàm is_dir() trong PHP
Trần Thị Vân
- 1198
- 10/08/2025
Chức năng của Hàm is_dir() trong PHP
Hàm is_dir() trong PHP dùng để kiểm tra một đường dẫn xem nó có dẫn tới một thư mục hay không, thư mục đó có tồn tại hay không, nếu đúng thì trả về true, nếu sai thì trả về false.
Cú pháp của Hàm is_dir() trong PHP
$kết_quả = is_dir("đường_dẫn");
đường_dẫn: Đường dẫn để kiểm tra có dẫn tới một thư mục hay không.
$kết_quả: Nếu đường dẫn có dẫn tới một thư mục có tồn tại thì trả về true, nếu thư mục đó không tồn tại hoặc đó không phải là thư mục thì trả về false.
Code Hàm is_dir() trong PHP
<?php
$filenguon = "thumuctest/test.txt";
if(is_dir($filenguon)){
echo '$filenguon dẫn tới thư mục<br>';
}else{
echo '$filenguon không dẫn tới thư mục hoặc thư mục không tồn tại<br>';
}
// Kết quả: $filenguon không dẫn tới thư mục hoặc thư mục không tồn tại
$thumuc = "thumuctest";
if(is_dir($thumuc)){
echo '$thumuc dẫn tới thư mục<br>';
}else{
echo '$thumuc không dẫn tới thư mục hoặc thư mục không tồn tại<br>';
}
// Kết quả: $thumuc dẫn tới thư mục
$thumuckhongco = "thumuckhongco";
if(is_dir($thumuckhongco)){
echo '$thumuckhongco dẫn tới thư mục<br>';
}else{
echo '$thumuckhongco không dẫn tới thư mục hoặc thư mục không tồn tại<br>';
}
// Kết quả: $thumuckhongco không dẫn tới thư mục hoặc thư mục không tồn tại
?>
Kết quả:
$filenguon không dẫn tới thư mục hoặc thư mục không tồn tại
$thumuc dẫn tới thư mục
$thumuckhongco không dẫn tới thư mục hoặc thư mục không tồn tại
Ứng dụng hàm is_dir() trong PHP khi xử lý thư mục
Khi làm việc với hệ thống tệp, việc kiểm tra một đường dẫn có thực sự là thư mục hay không giúp PHP tránh thực hiện sai thao tác. Hàm is_dir() đặc biệt hữu ích trước các bước như tạo thư mục, ghi dữ liệu hoặc đọc nội dung bên trong thư mục.
Kiểm tra thư mục trước khi tạo thư mục mới
Trước khi gọi mkdir(), có thể dùng is_dir() để xác định thư mục đã tồn tại hay chưa. Cách này giúp hạn chế việc tạo lại một thư mục đã có và cho phép chương trình xử lý đường dẫn rõ ràng hơn.
<?php
$folder = 'uploads';
if (!is_dir($folder)) {
mkdir($folder, 0755, true);
}
echo 'Thư mục đã sẵn sàng.';
?>
Trong ví dụ trên, PHP chỉ gọi mkdir() khi uploads chưa phải là một thư mục tồn tại. Tham số true cho phép tạo cả các thư mục cha cần thiết nếu chúng chưa có.
Kết hợp is_dir() với các hàm xử lý thư mục khác
is_dir() thường đóng vai trò bước kiểm tra trước khi thực hiện thao tác tiếp theo. Sau khi xác nhận đường dẫn là thư mục, PHP có thể kết hợp với các hàm như scandir(), rmdir() hoặc những hàm xử lý tệp khác để xây dựng quy trình quản lý thư mục an toàn hơn.
<?php
$folder = 'uploads';
if (is_dir($folder)) {
$items = scandir($folder);
foreach ($items as $item) {
echo $item . '<br>';
}
}
?>
Cách kiểm tra này giúp chương trình không cố đọc nội dung từ một đường dẫn không phải thư mục. Khi xử lý dữ liệu do người dùng cung cấp, nên kết hợp thêm bước kiểm soát đường dẫn và quyền truy cập thay vì chỉ dựa vào kết quả của is_dir().
Lời kết
Cảm ơn các bạn đã tham khảo bài viết Hàm is_dir() trong PHP.
- 0 Bình luận
Email, Điện thoại của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *