Hàm preg_match_all() trong PHP



Cú pháp

Hàm preg_match_all() trong PHP có cú pháp như sau:

int preg_match_all (string pattern, string string, array pattern_array [, int order]);

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

Hàm preg_match_all() so khớp tất cả sự xuất hiện của pattern trong chuỗi.

Nó sẽ đặt các so khớp này trong mảng pattern_array theo thứ tự bạn xác định bởi sử dụng tham số order tùy ý. Có hai kiểu order có thể là:

  • PREG_PATTERN_ORDER − là mặc định nếu tham số order tùy ý này không được bao. PREG_PATTERN_ORDER xác định thứ tự theo cách bạn có thể nghĩ về nó logic nhất; $pattern_array[0] là một mảng tất cả các so khớp pattern hoàn chỉnh, $pattern_array[1] là một mảng tất cả chuỗi so khớp với regexp được tham số hóa đầu tiên và cứ tiếp tục như vậy.

  • PREG_SET_ORDER − sẽ xếp thứ tự mảng khác một chút với cài đặt mặc định. $pattern_array[0] sẽ chứa các phần tử được so khớp bởi regexp được tham số hóa đầu tiên, $pattern_array[1] sẽ chứa phần tử được so khớp bởi regexp được tham số hóa thứ hai, và cứ tiếp tục như vậy.

Trả về giá trị

  • Trả về số các so khớp.

Ví dụ

Dưới đây là ví dụ minh họa về hàm preg_match_all() trong PHP, bạn sao chép và dán ví dụ này vào trong một file và kiểm tra kết quả:

Cristiano Ronaldo 
Club: Real Madrid"; preg_match_all ("/(.*)<\/b>/U", $userinfo, $pat_array); print $pat_array[0][0]."
".$pat_array[0][1]."\n"; ?>

Lưu chương trình trên trong một file có tên là test.php trong htdocs, sau đó mở trình duyệt và gõ địa chỉ http://localhost:8080/test.php sẽ cho kết quả:

Hàm preg-match-all trong PHP

Các bài học PHP phổ biến khác tại VietJack:


regular_expression_trong_php.jsp