Hướng dẫn những mẹo cơ bản về tìm chuỗi trong PHP về code web

Phần lớn dữ liệu được hiển thị ở dạng văn bản (hay dạng chuỗi) trong một trang web. Do vậy, nếu chúng ta không xử lý được hay cũng không biết cách tìm kiếm chuỗi trong PHP thì đó là một khiếm khuyết lớn.

Để loại bỏ đi khiếm khuyết này, ngay dưới đây sẽ hướng dẫn cho các bạn những mẹo cơ bản về tìm chuỗi trong PHP. Đó là những hàm tìm kiếm chuỗi thông dụng nhất mà chúng ta cần nắm được.

Lập trình trong PHP phổ biến
Lập trình trong PHP phổ biến

Mời bạn tham khảo thêm một số tài liệu khác về ngôn ngữ lập trình PHP tại đây

Biến $_Server là gì?

Biến $_Server là một mảng chứa các thông tin do Webserver sinh ra như header, path, location script…Chúng ta cần thực hiện thao tác in mảng $_SERVER để có thể xem thông tin về các thông số SERVER. Một số thông tin tìm chuỗi trong PHP có thể lấy được qua biến $_SERVER[‘QUERY_STRING’]. Sử dụng biến này, chúng ta sẽ được trả về chuỗi query trang đang truy cập.

Những mẹo cơ bản để tìm chuỗi trong PHP về code web

Để có thể tìm chuỗi trong PHP một cách dễ dàng nhất, chúng ta sẽ sử dụng tới các hàm trong PHP. Các hàm cần sử dụng để tìm kiếm chuỗi trong PHP gồm : strpos và strstr.

  • strstr($string, $ky_tu_cho_truoc ) : Tách ra một chuỗi con từ vị trí đầu tiên của chuỗi cho trước cho đến cuối chuỗi.

Hàm này còn dùng để kiểm tra xem có chuỗi con trong chuỗi cha hay không. Nếu có thì hàm sẽ trả về 1 chuỗi tương ứng, còn nếu không có hàm sẽ trả về giá trị false.

Hàm này phân biệt chữ hoa và chữ thường.

  • stristr($string, $ky_tu_cho_truoc) : giống hàm strstr nhưng hàm này không phân biệt chữ hoa chữ thường.

Strings là một trong những kiểu dữ liệu quan trọng và được dùng thông dụng nhất trong lập trình PHP.  Để sử dụng hàm, ta sẽ lập trình theo cú pháp :

string strstr(string str1, string str2);

Để hiểu rõ hơn về hàm tìm chuỗi này, chúng ta có một ví dụ sau:

String function -hàm tìm chuỗi được lập trình cụ thể
String function -hàm tìm chuỗi được lập trình cụ thể

Tìm hiểu thêm bài viết hướng dẫn cách tạo Api với PHP

Với ví dụ trên, ta sẽ lập trình như sau để tìm kiếm chuỗi:

<?php
$str=”your customer service is excellent.”;
echo strstr($str,”is”).”<br>”;
echo strchr($str,”c”).”<br>”;
echo strchr($str,”e”).”<br>”;
echo strstr($str,”er”).”<br>”;
?>

Tìm vị trí của chuỗi con

Để tìm kiếm một chuỗi bên trong một chuỗi khác chúng ta có thể sử dụng một trong ba hàm sau: strstr(), strchr(), strrchr() hay stristr().

Tuy nhiên, để có thể tìm kiếm vị trí xuất hiện str1 trong chuỗi str2, chúng ta có thể sử dụng các hàm như: strpos(), strrpos().

  • strops : Tìm vị trí xuất hiện đầu tiên của $chuoi_tim trong chuỗi $str.
  • strrpos : Tìm vị trí xuất hiện cuối cùng của $chuoi_tim trong chuỗi $str.

Hàm strpos() trả về vị trí tìm thấy chuỗi str1 trong chuỗi str2.

Ngược lại, hàm strpos() sẽ trả về giá trị -1.

Hàm này chỉ trả về vị trí chuỗi str1 đầu tiên nếu có nhiều chuỗi str1 giống nhau.
Cách sử dụng hàm strpos(), ta lập trình theo cú pháp:

int strpos(string str1, string str2 [int off]);

Kí tự đầu tiên của chuỗi tính từ 0.

Lấy một ví dụ minh họa để có thể hiểu rõ hơn về hàm này như sau:

<?
$str=”your customer service is .”;
echo $str.”<br>”;
echo “is:”.strpos($str,”is”).”<br>”;
echo “e:”.strrpos($str,”e”).”<br>”;
?>

//Vị trí chuỗi e cuối cùng

Hàm sẽ trả về màn hình kết quả như trên
Hàm sẽ trả về màn hình kết quả như trên

Tìm hiểu thêm tài liệu viết về vai trò của $_server trong PHP

Ngoài các hàm trên, để tìm kiếm và thay thế chuỗi, chúng ta có thể sử dụng một hàm nữa nữa đó chính là: hàm str_replace ( $chuoi_can_tim, $chuoi_thay_the, $chuoi_ban_dau ).

Đây là hàm có chức năng như tên gọi của nó đó là tìm kiếm và thay thế chuỗi giống như Ctrl + H

Thông thường, hàm này nếu sử dụng các  Framework PHP thì nó có hỗ trợ nhưng nếu cần tự mình làm thì các bạn có thể sử dụng. Trên đây là những hàm dùng để tìm kiếm chuỗi trong PHP về code web hiệu quả và cơ bản nhất. Hy vọng bài viết này có giúp ích được cho các bạn trong công việc và học tập.

Trả lời

Email 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 *