PHP preg_grep()
Giới thiệu về preg_grep
Trong PHP, hàm preg_grep()
được sử dụng để lọc một mảng bằng cách áp dụng một biểu thức chính quy (regular expression). Hàm này trả về một mảng chứa các phần tử khớp với mẫu đã chỉ định.
Cú pháp
array preg_grep ( string $pattern , array $input [, int $flags = 0 ] )
Tham số
- $pattern: Biểu thức chính quy dùng để tìm kiếm trong mảng.
- $input: Mảng cần được lọc.
- $flags: (Tùy chọn) Có thể dùng để thay đổi cách hoạt động của hàm. Ví dụ: sử dụng
PREG_GREP_INVERT
sẽ trả về các phần tử không khớp với mẫu.
Giá trị trả về
Hàm preg_grep()
trả về một mảng chứa các phần tử trong $input
mà khớp với $pattern
. Nếu không có phần tử nào khớp, hàm sẽ trả về một mảng rỗng.
Ví dụ
$input = array("apple", "orange", "banana", "grape", "avocado"); $pattern = "/^a/"; // Các từ bắt đầu bằng 'a' $result = preg_grep($pattern, $input); print_r($result);
Kết quả của đoạn mã trên sẽ là mảng chứa các phần tử:
Array ( [0] => apple [4] => avocado )
Flags
Các flags có thể sử dụng với preg_grep()
bao gồm:
PREG_GREP_INVERT
: Trả về các phần tử không khớp với mẫu.
Ví dụ với flags
$result = preg_grep($pattern, $input, PREG_GREP_INVERT); // Kết quả sẽ là các từ không bắt đầu bằng 'a' print_r($result);
Kết luận
Hàm preg_grep()
rất hữu ích khi bạn cần lọc một mảng dựa trên các tiêu chí nhất định, đặc biệt là khi làm việc với các mẫu phức tạp thông qua biểu thức chính quy.