Thời gian đọc: 10 phút
PHP cung cấp rất nhiều hàm tích hợp sẵn để xử lý chuỗi, giúp thao tác với dữ liệu văn bản một cách dễ dàng và hiệu quả. Dưới đây là một danh sách chi tiết các hàm xử lý chuỗi phổ biến trong PHP, kèm theo ví dụ minh họa và giải thích chi tiết.
strlen()
– Độ dài chuỗiHàm này trả về số lượng ký tự trong một chuỗi, bao gồm cả khoảng trắng.
$str = "Hello, world!";
echo strlen($str); // Kết quả: 13
strtoupper()
– Chuyển chuỗi thành chữ hoaChuyển tất cả các ký tự trong chuỗi thành chữ hoa.
$str = "hello, world!";
echo strtoupper($str); // Kết quả: HELLO, WORLD!
strtolower()
– Chuyển chuỗi thành chữ thườngChuyển tất cả các ký tự trong chuỗi thành chữ thường.
$str = "HELLO, WORLD!";
echo strtolower($str); // Kết quả: hello, world!
ucfirst()
– Viết hoa chữ cái đầu tiênChuyển ký tự đầu tiên của chuỗi thành chữ hoa.
$str = "hello, world!";
echo ucfirst($str); // Kết quả: Hello, world!
lcfirst()
– Viết thường chữ cái đầu tiênChuyển ký tự đầu tiên của chuỗi thành chữ thường.
$str = "Hello, World!";
echo lcfirst($str); // Kết quả: hello, World!
ucwords()
– Viết hoa chữ cái đầu mỗi từChuyển chữ cái đầu tiên của mỗi từ trong chuỗi thành chữ hoa.
$str = "hello, world!";
echo ucwords($str); // Kết quả: Hello, World!
trim()
– Loại bỏ khoảng trắngLoại bỏ các ký tự khoảng trắng (hoặc các ký tự tùy chọn) từ đầu và cuối chuỗi.
$str = " Hello, World! ";
echo trim($str); // Kết quả: "Hello, World!"
ltrim()
– Loại bỏ khoảng trắng bên tráiLoại bỏ khoảng trắng từ đầu chuỗi.
$str = " Hello, World! ";
echo ltrim($str); // Kết quả: "Hello, World! "
rtrim()
– Loại bỏ khoảng trắng bên phảiLoại bỏ khoảng trắng từ cuối chuỗi.
$str = " Hello, World! ";
echo rtrim($str); // Kết quả: " Hello, World!"
substr()
– Lấy một phần của chuỗiTrích xuất một phần của chuỗi từ vị trí bắt đầu và số lượng ký tự cần lấy.
$str = "Hello, world!";
echo substr($str, 7, 5); // Kết quả: world
strpos()
– Tìm vị trí của chuỗi conTìm vị trí xuất hiện đầu tiên của một chuỗi con trong chuỗi mẹ.
$str = "Hello, world!";
echo strpos($str, "world"); // Kết quả: 7
strrpos()
– Tìm vị trí của chuỗi con cuối cùngTìm vị trí xuất hiện cuối cùng của một chuỗi con trong chuỗi mẹ.
$str = "Hello, world! world!";
echo strrpos($str, "world"); // Kết quả: 13
str_replace()
– Thay thế chuỗi conThay thế tất cả các lần xuất hiện của một chuỗi con trong chuỗi mẹ bằng chuỗi mới.
$str = "Hello, world!";
echo str_replace("world", "PHP", $str); // Kết quả: Hello, PHP!
str_repeat()
– Lặp lại chuỗiLặp lại chuỗi một số lần cụ thể.
$str = "Hello!";
echo str_repeat($str, 3); // Kết quả: Hello!Hello!Hello!
explode()
– Tách chuỗi thành mảngTách chuỗi thành một mảng dựa trên một ký tự phân cách.
$str = "apple,banana,orange";
$array = explode(",", $str);
print_r($array);
// Kết quả: Array ( [0] => apple [1] => banana [2] => orange )
implode()
– Nối mảng thành chuỗiNối các phần tử của một mảng thành một chuỗi, sử dụng một ký tự phân cách.
$array = ["apple", "banana", "orange"];
$str = implode(", ", $array);
echo $str; // Kết quả: apple, banana, orange
strrev()
– Đảo ngược chuỗiĐảo ngược thứ tự các ký tự trong chuỗi.
$str = "Hello, world!";
echo strrev($str); // Kết quả: !dlrow ,olleH
strcmp()
– So sánh chuỗiSo sánh hai chuỗi. Trả về 0 nếu hai chuỗi bằng nhau, trả về giá trị âm nếu chuỗi đầu nhỏ hơn chuỗi thứ hai, và ngược lại.
echo strcmp("Hello", "Hello"); // Kết quả: 0
echo strcmp("Hello", "hello"); // Kết quả: -1
strcasecmp()
– So sánh chuỗi không phân biệt chữ hoa chữ thườngSo sánh hai chuỗi nhưng không phân biệt chữ hoa hay chữ thường.
echo strcasecmp("Hello", "hello"); // Kết quả: 0
number_format()
– Định dạng số dưới dạng chuỗiChuyển một số thành chuỗi với định dạng có dấu phẩy.
$number = 12345.6789;
echo number_format($number, 2); // Kết quả: 12,345.68
htmlspecialchars()
– Mã hóa các ký tự HTML đặc biệtChuyển các ký tự đặc biệt như <
, >
thành các mã HTML an toàn để hiển thị trên trình duyệt.
$str = "Hello, World!";
echo htmlspecialchars($str); // Kết quả: <h1>Hello, World!</h1>
addslashes()
– Thêm dấu gạch chéo vào chuỗiThêm ký tự gạch chéo () trước các ký tự đặc biệt như dấu nháy đơn ('
), dấu nháy kép ("
), dấu gạch chéo (), và NULL.
$str = "John's book";
echo addslashes($str); // Kết quả: John's book
strtok()
– Tách chuỗi theo từng tokenTách chuỗi thành từng phần nhỏ dựa trên ký tự phân cách, xử lý từng phần một.
$str = "apple,banana,orange";
$token = strtok($str, ",");
while ($token !== false) {
echo $token . "n";
$token = strtok(",");
}
// Kết quả:
// apple
// banana
// orange
substr_count()
– Đếm số lần xuất hiện của chuỗi conHàm này trả về số lần xuất hiện của một chuỗi con trong chuỗi mẹ.
$str = "Hello, world! Hello again!";
echo substr_count($str, "Hello"); // Kết quả: 2
nl2br()
– Chuyển đổi ký tự xuống dòng thành thẻ <br>
Hàm này chuyển đổi tất cả các ký tự xuống dòng (n
) trong chuỗi thành thẻ HTML <br>
để hiển thị đúng định dạng xuống dòng trên trình duyệt.
$str = "Hello,nWorld!";
echo nl2br($str);
// Kết quả: Hello,World!
wordwrap()
– Ngắt dòng trong chuỗi ở độ dài cụ thểHàm này ngắt chuỗi thành các dòng có độ dài tối đa được chỉ định.
$str = "This is a very long string that needs to be wrapped.";
echo wordwrap($str, 15, "n");
// Kết quả:
// This is a very
// long string
// that needs to
// be wrapped.
parse_str()
– Phân tích chuỗi truy vấn URL thành các biếnPhân tích một chuỗi truy vấn URL và chuyển nó thành các biến.
$query = "name=John&age=25&city=NewYork";
parse_str($query, $output);
print_r($output);
// Kết quả:
// Array ( [name] => John [age] => 25 [city] => NewYork )
json_encode()
– Chuyển đổi mảng hoặc đối tượng thành chuỗi JSONHàm này chuyển đổi một mảng hoặc đối tượng PHP thành chuỗi JSON.
$array = ["name" => "John", "age" => 25, "city" => "NewYork"];
echo json_encode($array);
// Kết quả: {"name":"John","age":25,"city":"NewYork"}
json_decode()
– Phân tích chuỗi JSON thành mảng hoặc đối tượngHàm này chuyển một chuỗi JSON thành mảng hoặc đối tượng PHP.
$json = '{"name":"John","age":25,"city":"NewYork"}';
$array = json_decode($json, true);
print_r($array);
// Kết quả:
// Array ( [name] => John [age] => 25 [city] => NewYork )
str_shuffle()
– Trộn lẫn các ký tự trong chuỗiHàm này trộn lẫn ngẫu nhiên các ký tự trong một chuỗi.
$str = "abcdef";
echo str_shuffle($str);
// Kết quả có thể là: "fdecba" hoặc bất kỳ thứ tự nào ngẫu nhiên khác
str_pad()
– Lấp đầy chuỗi với ký tự cụ thểHàm này thêm các ký tự vào đầu hoặc cuối chuỗi để đảm bảo chuỗi đạt được một độ dài nhất định.
$str = "Hello";
echo str_pad($str, 10, "-");
// Kết quả: Hello-----
str_split()
– Tách chuỗi thành mảng các ký tựHàm này tách chuỗi thành một mảng chứa các ký tự hoặc chuỗi con có độ dài cố định.
$str = "Hello";
print_r(str_split($str));
// Kết quả: Array ( [0] => H [1] => e [2] => l [3] => l [4] => o )
Bạn cũng có thể chỉ định độ dài của mỗi phần tử trong mảng.
print_r(str_split($str, 2));
// Kết quả: Array ( [0] => He [1] => ll [2] => o )
similar_text()
– Tính toán mức độ giống nhau giữa hai chuỗiHàm này so sánh hai chuỗi và trả về số lượng ký tự giống nhau giữa chúng. Bạn cũng có thể nhận được phần trăm độ giống nhau.
$str1 = "Hello, World!";
$str2 = "Hello, PHP!";
echo similar_text($str1, $str2); // Kết quả: 9
// Để nhận phần trăm giống nhau
similar_text($str1, $str2, $percent);
echo $percent; // Kết quả: 66.6667
str_ireplace()
– Thay thế chuỗi con (không phân biệt chữ hoa, chữ thường)Tương tự như str_replace()
, nhưng không phân biệt chữ hoa hay chữ thường.
$str = "Hello, WORLD!";
echo str_ireplace("world", "PHP", $str); // Kết quả: Hello, PHP!
addcslashes()
– Thêm dấu gạch chéo trước một loạt ký tự cụ thểHàm này thêm dấu gạch chéo () trước các ký tự đã chỉ định trong chuỗi.
$str = "Hello, World!";
echo addcslashes($str, 'A..Z'); // Kết quả: Hello, World!
strpbrk()
– Tìm kiếm chuỗi với bất kỳ ký tự nào từ danh sáchHàm này tìm kiếm chuỗi và trả về phần còn lại của chuỗi từ vị trí đầu tiên xuất hiện bất kỳ ký tự nào trong danh sách.
$str = "Hello, World!";
echo strpbrk($str, "oW"); // Kết quả: o, World!
strtr()
– Thay thế ký tự hoặc chuỗi conHàm này thay thế các ký tự trong chuỗi với các ký tự hoặc chuỗi khác.
$str = "Hello, World!";
echo strtr($str, "eo", "ia"); // Kết quả: Hilla, Warld!
Bạn cũng có thể dùng một mảng để thay thế các chuỗi con cụ thể:
$str = "Hello, World!";
$replace_pairs = array("Hello" => "Hi", "World" => "PHP");
echo strtr($str, $replace_pairs); // Kết quả: Hi, PHP!
word_count()
– Đếm số lượng từ trong chuỗiHàm này trả về số lượng từ trong một chuỗi.
$str = "Hello, World!";
echo str_word_count($str); // Kết quả: 2
metaphone()
– Thuật toán phiên âmHàm này chuyển một chuỗi thành dạng phiên âm, giúp so sánh chuỗi dựa trên cách phát âm.
$str = "World";
echo metaphone($str); // Kết quả: WRLT
md5()
– Mã hóa chuỗi bằng thuật toán MD5Hàm này mã hóa một chuỗi bằng cách sử dụng thuật toán MD5 và trả về chuỗi đã được mã hóa.
$str = "Hello, World!";
echo md5($str); // Kết quả: fc3ff98e8c6a0d3087d515c0473f8677
sha1()
– Mã hóa chuỗi bằng thuật toán SHA-1Hàm này mã hóa một chuỗi bằng thuật toán SHA-1 và trả về chuỗi đã mã hóa.
$str = "Hello, World!";
echo sha1($str); // Kết quả: 2ef7bde608ce5404e97d5f042f95f89f1c232871
PHP cung cấp rất nhiều hàm mạnh mẽ và đa dạng để thao tác với chuỗi, từ các thao tác cơ bản như cắt, nối chuỗi, đến các hàm phức tạp hơn như mã hóa HTML, định dạng chuỗi. Những hàm này giúp việc xử lý và thao tác dữ liệu chuỗi trong các ứng dụng web dễ dàng và linh hoạt hơn.