Trong bài này chúng ta sẽ cùng tìm hiểu cách lấy ra một phần của một chuỗi trong Lập trình PHP.
Chúng ta sẽ tìm hiểu cách lấy ra một phần của một chuỗi bằng 3 phương thức strstr(), strpbrk() và substr().
1. Hàm strstr() trong PHP
Hàm strstr() trong PHP được sử dụng để lấy một phần của chuỗi tính từ vị trí chỉ định đến hết chuỗi.
Cú pháp hàm strstr() trong PHP:
strstr(string,search,before_search)
Các tham số trong hàm strstr():
- string: Bắt buộc. Chỉ định chuỗi để tìm kiếm
- search: Bắt buộc. Chỉ định chuỗi tìm kiếm. Nếu tham số này là một số, nó sẽ tìm kiếm ký tự khớp với giá trị ASCII của số đó
- before_search: Không bắt buộc. Một giá trị boolean có mặc định là ‘false’. Nếu được đặt thành ‘true’, nó sẽ trả về một phần của chuỗi trước lần xuất hiện đầu tiên của tham số tìm kiếm (không bao gồm search)
Ví dụ về cách sử dụng hàm strstr() trong PHP:
<?php
$email = 'hello@niithanoi.edu.vn';
$domain = strstr($email, '@');
echo $domain; // @niithanoi.edu.vn
$user = strstr($email, '@', true); // Kể từ PHP 5.3.0
echo $user; // hello
?>
>>> Xem cách kiểm tra một chuỗi bên trong chuỗi khác bằng hàm strpos() trong PHP
2. Hàm strpbrk() trong PHP
Hàm strpbrk() tìm kiếm một chuỗi cho bất kỳ ký tự nào được chỉ định. Hàm này sẽ trả về chuỗi bắt đầu từ ký tự được tìm thấy, nếu không, nó trả về flase
Cú pháp hàm strpbrk() trong PHP:
strpbrk(string,charlist)
Các tham số trong hàm strpbrk():
- string: Tham số bắt buộc chỉ định chuỗi để tìm kiếm
- charlist: Tham số bắt buộc chỉ định ký tự cần tìm
Ví dụ về cách sử dụng hàm strpbrk() trong PHP:
<?php
$text = 'Cả lớp học Lập trình PHP';
// Kết quả "học Lập trình PHP" vì 'h' được khớp trước
echo strpbrk($text, 'ch');
// Kết quả "Lập trình PHP" vì strpbrk() phân biệt Hoa - thường
echo strpbrk($text, 'L');
?>
3. Hàm substr() trong PHP
Hàm substr() trả về một phần của chuỗi với tham số chị định vị trí bắt đầu và độ dài của chuỗi dự định lấy về.
Cú pháp hàm substr() trong PHP:
substr(string,start,length)
Các tham số trong hàm substr():
- string: Bắt buộc. Chỉ định chuỗi định lấy 1 phần từ đó
- start: Bắt buộc. Chỉ định vị trí bắt đầu lấy (Số Dương lấy bắt đầu từ đầu chuỗi, Số Âm lấy bắt đầu từ cuối chuỗi, Số 0 lấy từ ký tự đầu tiên)
- length: Tham số không bắt buộc. Chỉ định độ dài của chuỗi trả về. Mặc định là đến cuối chuỗi. (Số dương – Độ dài được trả về từ tham số bắt đầu. Số âm – Độ dài được trả về từ cuối chuỗi)
Ví dụ về cách sử dụng hàm substr() trong PHP:
Chúng ta cùng xem ví dụ về hàm substr() bên dưới, VD1
<?php
$rest = substr("abcdef", 1); // returns "bcdef"
$rest = substr("abcdef", -2); // returns "ef"
$rest = substr("abcdef", 3, 1); // returns "d"
$rest = substr("abcdef", -3, 1); // returns "d"
?>
Ví dụ thứ 2
<?php
$rest = substr("abcdef", 0, -1); // returns "abcde"
$rest = substr("abcdef", 2, -1); // returns "cde"
$rest = substr("abcdef", 4, -4); // returns false
$rest = substr("abcdef", -3, -1); // returns "de"
?>
Tổng kết
Trên đây là 3 hàm PHP cung cấp sẵn để lấy một phần chuỗi ra từ một chuỗi khác. Nếu chỉ muốn kiểm tra sự tồn tại của chuỗi thì có thể sử dụng hàm strpos().