Kết nối

9 hàm phổ biến nhất dùng để xử lý chuỗi trong PHP

80 lượt xem 
 
Thể loại: Hàm PHP 

Trong lập trình, kiểu dữ liệu chuỗi là một trong những kiểu dữ liệu phổ biến nhất. Tất nhiên, ngôn ngữ PHP cũng có khái niệm chuỗi và kèm theo đó các là hàm dùng để thao tác chuỗi như cắt chuỗi con, đếm ký tự chuỗi, thay thế chuỗi,… Bài viết này cung cấp cho bạn 9 hàm phổ biến nhất dùng để làm việc với chuỗi trong PHP.

Khai báo chuỗi

Để khai báo một chuỗi trong PHP, bạn có 3 cách chính:

  • Sử dụng một dấu nháy đơn ở đầu chuỗi và một dấu nháy đơn ở cuối chuỗi
  • Sử dụng một dấu nháy đôi ở đầu chuỗi và một dấu nháy đôi ở cuối chuỗi
  • Dùng cú pháp heredoc (EOT): cách này không phổ biến và có thể gây ra lỗi
  • Dùng cú pháp nowdoc (EOD): cách này không phổ biến và có thể gây ra lỗi

Ví dụ khai báo chuỗi bằng 3 cách như sau:

<?php
$str = 'Hello, I am Dammio!'; // dùng nháy đơn
$str = "Hello, I am Dammio!"; // dùng nháy đôi
?>

9 hàm phổ biến dùng để xử lý chuỗi

1. substr()

Hàm này dùng để lấy một chuỗi con trong chuỗi cha (chuỗi ban đầu). Cú pháp như sau:

string substr($string, $start, $length );

Trong đó $string là chuỗi ban đầu, $start là vị trí cần cắt chuỗi (kiểu int), $length là số ký tự cần lấy tính từ vị trí ban đầu (kiểu int)

Ví dụ lấy chuỗi “am” từ chuỗi gốc “Dammio.com”.

<?php
$str = 'Dammio.com';
echo substr($str, 1, 2);
// Kết quả là: am
?>

2. strlen()

Hàm này đếm số ký tự trong chuỗi và trả về kiểu int. Cú pháp:

int strlen($string). Trong đó, $string là chuỗi cần đếm.

Ví dụ đếm chuỗi “Dammio.com” có bao nhiêu ký tự:

<?php
$str = 'Dammio.com';
echo strlen($str);
// Kết quả là: 10
?>

3. str_replace()

Hàm này dùng để thay thế một chuỗi con trong chuỗi gốc bằng một chuỗi mới. Cú pháp:

mixed str_replace (mixed $search, mixed $replace, mixed $subject, int &$count)

Trong đó, hàm này trả về kiểu mixed (trộn) với các tham số $search là chuỗi cần thay thế, $replace là chuỗi thay thế, $subject là chuỗi gốc thực hiện thay thế, và tham số $count là tham số tùy chọn cho biết số lần được thay thế sau khi hàm thực hiện.

<?php
$str     = "Dammio-John-Sam-Acards";
$search  = "-";
$replace = '*';

$newstr = str_replace($search, $replace, $str, $count);
echo $newstr;
echo "<br/> Số lần thay thế: " . $count; 

// Kết quả: Dammio*John*Sam*Acards
?>

4. trim()

Hàm trim dùng để cắt tỉa khoảng trắng hoặc bất kỳ ký tự nào khớp kết quả cần cắt ở đầu và cuối chuỗi gốc. Hàm này có cú pháp:

string trim($str, $characters)

Trong đó $str là chuỗi gốc và $characters là chuỗi chứa các ký tự cần loại bỏ.

<?php
$str = ' abc dammio cba ';
 
// Loại bỏ khoảng trắng đầu và cuối chuỗi
echo trim ($str) . '<br/>';

// Loại bỏ khoảng trắng và kèm theo ký tự a, b, c ở đầu và cuối chuỗi
echo trim ($str, ' abc');
?>

5. strpos()

Hàm này trả về vị trí đầu tiên của một chuỗi con trong chuỗi cha. Hàm này có cú pháp:

int strpos($string, $find, $start)

Trong đó $string là chuỗi gốc, $find là chuỗi cần tìm và $start (tham số tùy chọn) là vị trí (int) bắt đầu tìm. Hàm này trả về vị trí (int) đầu tiên của chuỗi con được tìm thấy.

<?php
$str = "dammio.com";

echo strpos($str, 'a') . "<br/>";

// Do vị trí bắt đầu tìm là 7, cho nên kết quả là vị trí ký tự 'o' thứ hai
echo strpos($str, 'o', 7);
?>

6. strtolower()

Hàm này có tác dụng đổi các ký tự chuỗi thành các ký tự viết thường.

<?php
$str = "DammiO.com";

// Viết thường toàn bộ ký tự
echo strtolower($str) . "<br/>";

// Viết hoa toàn bộ ký tự
echo strtoupper($str);
?>

7. strtoupper()

Ngược với hàm strtolower(), hàm này có tác dụng đổi các ký tự chuỗi thành các ký tự viết hoa.

<?php
$str = "DammiO.com";

// Viết thường toàn bộ ký tự --- dammio.com
echo strtolower($str) . "<br/>";

// Viết hoa toàn bộ ký tự ---- DAMMIO.COM
echo strtoupper($str);
?>

8. is_string()

Hàm này kiểm tra giá trị đầu vào (biến) có phải là kiểu dữ liệu chuỗi hay không.

<?php
if (is_string (123)) {
	echo "<br/>Đây là kiểu chuỗi.";
} else {
	echo "<br/>Đây không phải là kiểu chuỗi.";
}

// Kết quả: Đây không phải là kiểu chuỗi.

if (is_string ("dammio")) {
	echo "<br/>Đây là kiểu chuỗi.";
} else {
	echo "<br/>Đây không phải là kiểu chuỗi.";
}

// Kết quả: Đây là kiểu chuỗi..
?>

9. strstr()

Giống như hàm strpos(), nhưng hàm strstr() lại trả về kết quả bool cho biết chuỗi con có nằm trong chuỗi cha hay không.

<?php
$url = 'dammio.com';
 
if (strstr ( $url, 'dammio.com' )) {
	echo "Đây là URL của website DAMMIO!";
}
else echo "Đây không phải là URL của website DAMMIO!";
?>

// Kết quả: Đây là URL của website DAMMIO!

Kết luận

Trên đây là 9 hàm phổ biến dùng để xử lý chuỗi trong PHP. Ngoài ra PHP cung cấp cực kỳ nhiều hàm tiện tích để thao tác với chuỗi, bạn sẽ dần quen và tìm hiểu trong quá trình học tập và tích lũy kinh nghiệm khi thực hiện các dự án thực tế cho khách hàng.

Thẻ: , , , ,

Bình luận Facebook

Để lại bình luận

avatar
1000
  Theo dõi  
Thông báo của