Bài này chúng ta tìm hiểu kiểu dữ liệu chuỗi trong PHP, giới thiệu một số hàm xử lý chuỗi trong PHP cơ bản.
Dữ liệu kiểu chuỗi trong PHP là gì?
Chuỗi là một dãy các ký tự, con số, ký tự đặc biệt và giá trị toán hoặc hoặc bao gồm tất cả chúng. Cách đơn giản để tạo ra một chuỗi là bạn đặt chúng vào dấu nháy đơn như: $my_string = 'Hello! Welcome to PHP!';
Bạn cũng có dùng dấu nháy kép. Tuy nhiên, dấu nháy đơn và nháy kép có công dụng hoàn toàn khác nhau. Chuỗi được đặt trong cặp dấu nháy đơn nó chính xác là những gì bạn thấy khi hiển thị trên trình duyệt. Trong đi đó, chuỗi được đặt trong cặp nháy kép, sẽ thay thế biến có trong nó bằng giá trị của biến, tương tự như các chuỗi các ký tự đặc biệt.
Các chuỗi ký tự đặc biệt này được thay thế như sau:
- \n được thay thế bằng một dòng ký tự mới
- \r được thay thế bằng ký tự xuống dòng
- \t được thay thế bằng ký tự tab
- \$ được thay thế bằng ký tự $ ($)
- \" được thay thế bằng một dấu nháy kép (")
- \\ được thay thế bằng dấu gạch chéo ngược (\)
Ví dụ cho thấy sự khác nhau giữa nháy đơn và nháy kép
<?php
$my_str = 'Welcome to PHP!';
echo "Hello! $my_str!<br>"; // hiện ra Hello! Welcome to PHP!
echo 'Hello! $my_str!<br>'; // hiện ra Hello, $my_str!
echo '<pre>Hello\tWorld!</pre>'; // hiện ra Hello\tWorld!
echo "<pre>Hello\tWorld!</pre>"; // hiện ra Hello World!
echo 'I\'ll be back'; // hiện ra: I'll be back
?>
Một số hàm xử lý chuỗi trong PHP
PHP cung cấp rất nhiều hàm được xây dựng sẵn, để xử lý chuỗi văn bản, như tính chiều dài chuỗi, tìm chuỗi con hay ký tự, thay thế một phần của chuỗi bằng những ký tự , phân chia thành nhiều chuỗi con. Một số ví dụ các hàm này
Tính độ dài của chuỗi
Hàm strlen() được sử dụng để tính toán số lượng ký tự có trong chuỗi. Nó tính luôn cả các ký tự trống.
<?php
$my_str = 'Welcome to PHP';
// Kết quả: 14
echo strlen($my_str);
?>
Đếm số từ trong chuỗi
Hàm str_word_count() đếm số từ trong chuỗi
<?php
$my_str = 'The quick brown fox jumps over the lazy dog.';
// kết quả: 9
echo str_word_count($my_str);
?>
Thay thế văn bản trong chuỗi
Hàm str_replace() thay thế toàn bộ các đoạn text tìm được bằng từ hay chuỗi khác, ví dụ
<?php
$my_str = 'If the facts do not fit the theory, change the facts.';
// Perform string replacement
str_replace("facts", "truth", $my_str, $count);
// Display number of replacements performed
echo "The text was replaced $count times.";
?>
Kết quả sẽ là: If the truth do not fit the theory, change the truth.
Hàm str_replace() có thể nhận đến 4 tham số, cung cấp cho bạn số lần chuỗi được thay thế
<?php
$my_str = 'If the facts do not fit the theory, change the facts.';
// Perform string replacement
str_replace("facts", "truth", $my_str, $count);
// Display number of replacements performed
echo "The text was replaced $count times.";
?>
Kết quả: The text was replaced 2 times.
Đảo một chuỗi
Hàm strrev() đảo ngược toàn bộ thứ tự các ký tự có trong chuỗi
<?php
$my_str = 'You can do anything, but not everything.';
// Display reversed string
echo strrev($my_str);
?>
Kết quả: .gnihtyreve ton tub ,gnihtyna od nac uoY
Tài liệu tham khảo về chuỗi
Còn rất nhiều hàm hữu ích thao tác trên chuỗi, chúng tôi sẽ có thư viện giải thích tất cả các hàm này.
Bài sau, chúng ta sẽ thảo luận các biểu thức của PHP.