Computer >> Máy Tính >  >> Lập trình >> PHP

PHP hình cầu://

Giới thiệu

Toàn cầu:// trình bao bọc luồng có sẵn trong tất cả các phiên bản PHP sau 5.3.0. Nó tìm các tên đường dẫn phù hợp với mẫu nhất định. Mục đích tương tự cũng được thực hiện bởi hàm hệ thống tệp cầu () của PHP tuân theo quy tắc libc perf ().

Tham số

Các ký tự đặc biệt

  • * - Đối sánh không hoặc nhiều ký tự.
  • ? - Khớp chính xác một ký tự (bất kỳ ký tự nào).
  • [...] - Khớp một ký tự từ một nhóm ký tự. Nếu ký tự đầu tiên là !, khớp với bất kỳ ký tự nào không có trong nhóm.
  • \ - Thoát ký tự sau, ngoại trừ khi cờ GLOB_NOESCAPE được sử dụng.

Cờ hợp lệ

  • GLOB_MARK - Thêm dấu gạch chéo (dấu gạch chéo ngược trên Windows) vào mỗi thư mục được trả về
  • GLOB_NOSORT - Trả lại các tập tin khi chúng xuất hiện trong thư mục (không phân loại). Khi cờ này không được sử dụng, các tên đường dẫn được sắp xếp theo thứ tự bảng chữ cái
  • GLOB_NOCHECK - Trả lại mẫu tìm kiếm nếu không tìm thấy tệp nào khớp với mẫu tìm kiếm
  • GLOB_NOESCAPE - Dấu gạch chéo ngược không trích dẫn siêu ký tự
  • GLOB_BRACE - Mở rộng {a, b, c} để khớp với 'a', 'b' hoặc 'c'
  • GLOB_ONLYDIR - Chỉ trả lại các mục nhập thư mục phù hợp với mẫu
  • GLOB_ERR - Dừng lỗi đọc (như thư mục không đọc được), theo mặc định, các lỗi sẽ được bỏ qua.

Ví dụ

Sử dụng hàm global ()

<?php
foreach (glob("test/*.php") as $filename) {
   echo "$filename size " . filesize($filename) . "\n";
}
?>

Sử dụng trình bao bọc hướng dẫn:// stream

<?php
$it = new DirectoryIterator("glob://test/*.php");
foreach($it as $f) {
   echo "File name: " . $f->getFilename() . " size: " . $f->getSize() . "\n";);
}
?>

Cả hai tập lệnh đều hiển thị tên và kích thước của tệp có phần mở rộng .php trong thử nghiệm thư mục con