Giải thích các hàm xử lý chuỗi trong PHP kèm ví dụ.
⚡ Tóm tắt thông minh
Chuỗi trong PHP là tập hợp các ký tự có thứ tự và là một trong những kiểu dữ liệu cốt lõi của ngôn ngữ này. Hướng dẫn này sẽ chỉ ra bốn cách tạo chuỗi: dấu ngoặc đơn, dấu ngoặc kép, heredoc và nowdoc, sau đó minh họa các hàm xử lý chuỗi tích hợp hữu ích nhất với các ví dụ.

Chuỗi trong PHP là gì?
Một chuỗi là một tập hợp các ký tự. Chuỗi là một trong những kiểu dữ liệu được PHP hỗ trợ.
Biến chuỗi có thể chứa các ký tự chữ và số. Chuỗi được tạo ra khi:
- Bạn khai báo một biến và gán các ký tự chuỗi cho nó.
- Bạn có thể sử dụng trực tiếp chuỗi PHP với câu lệnh echo.
- Các hàm xử lý chuỗi trong PHP là những cấu trúc ngôn ngữ giúp bạn làm việc với văn bản.
- Học cách các chuỗi hoạt động trong PHP và cách thao tác với chúng sẽ giúp bạn trở thành một nhà phát triển rất hiệu quả và năng suất.
PHP Tạo chuỗi bằng dấu ngoặc đơn kèm ví dụ
Bây giờ chúng ta hãy cùng xem xét bốn cách khác nhau để tạo và thao tác chuỗi trong PHP.
Tạo chuỗi PHP bằng dấu ngoặc đơn: cách đơn giản nhất để tạo chuỗi là sử dụng dấu ngoặc đơn.
Chúng ta hãy xem một ví dụ tạo chuỗi ký tự đơn giản trong PHP.
<?php
var_dump('You need to be logged in to view this page');
?>
Đầu ra:
string(42) "You need to be logged in to view this page"
Nếu trích dẫn đơn là một phần của giá trị chuỗi thì nó có thể được thoát bằng dấu gạch chéo ngược.
Đoạn mã dưới đây minh họa cách thoát khỏi một trích dẫn.
<?php echo 'I \'ll be back after 20 minutes'; ?>
Đầu ra:
I'll be back after 20 minutes
PHP Tạo chuỗi bằng cách sử dụng Double trích dẫn với ví dụ
Double Dấu ngoặc kép được sử dụng để tạo ra các chuỗi ký tự phức tạp hơn so với dấu ngoặc đơn.
Tên biến có thể được sử dụng trong dấu ngoặc kép và giá trị của chúng sẽ được hiển thị.
Chúng ta hãy xem xét một ví dụ.
<?php $name = 'Alicia'; echo "$name is friends with kalinda"; ?>
ĐÂY,
- Ví dụ trên tạo một chuỗi đơn giản với giá trị Alicia.
- Tên biến sau đó được sử dụng trong chuỗi được tạo bằng dấu ngoặc kép, và giá trị của nó được nội suy trong quá trình thực thi.
Đầu ra:
Alicia is friends with kalinda
Ngoài việc nội suy biến đổi, chuỗi dấu ngoặc kép cũng có thể thoát các ký tự đặc biệt khác như “\n” cho xuống dòng, “\$” cho dấu đô la, v.v.
Thêm ví dụ. Giả sử chúng ta có đoạn mã sau.
<?php $pwd = "pas$word"; echo $pwd; ?>
Đầu ra:
NOTICE : Undefined variable pas
Khi thực thi đoạn mã trên, sẽ xuất hiện thông báo “Not: Undefined variable” (Thông báo: Biến chưa được định nghĩa).
Điều này là do $word được coi là một biến.
Nếu chúng ta muốn ký hiệu đô la được coi là một giá trị theo nghĩa đen, chúng ta phải thoát khỏi nó.
<?php $word = "word"; $pwd = "pas\$word"; echo $pwd; ?>
Đầu ra:
pas$word
PHP Heredoc với ví dụ
Phương pháp heredoc được sử dụng để tạo ra các chuỗi khá phức tạp so với dấu ngoặc kép.
Heredoc hỗ trợ đầy đủ các tính năng của dấu ngoặc kép và cho phép tạo các giá trị chuỗi có nhiều dòng mà không cần sử dụng hàm nối chuỗi PHP.
Sử dụng dấu ngoặc kép để tạo chuỗi có nhiều dòng sẽ tạo ra lỗi.
Bạn cũng có thể sử dụng dấu ngoặc kép bên trong mà không cần dấu ngoặc kép.ping Chúng.
Ví dụ dưới đây minh họa cách sử dụng phương thức heredoc để tạo ra các giá trị chuỗi.
<?php $baby_name = "Shalon"; echo <<<EOT When $baby_name was a baby, She used to look like a "boy". EOT; ?>
ĐÂY,
<< là dấu phân cách chuỗi.
EOT là viết tắt của Kết thúc văn bản.
Nó nên được định nghĩa trên một dòng riêng biệt ở đầu và cuối chuỗi.
Lưu ý: bạn có thể sử dụng bất cứ thứ gì bạn thích thay cho EOT.
Đầu ra:
When Shalon was a baby, She used to look like a "boy".
PHP Nowdoc với ví dụ
Phương thức tạo chuỗi nowdoc tương tự như phương thức heredoc nhưng hoạt động theo cách của dấu ngoặc đơn.
Không có quá trình phân tích cú pháp nào diễn ra bên trong nowdoc.
Nowdoc rất lý tưởng khi làm việc với dữ liệu thô không cần phải phân tích cú pháp.
Đoạn mã dưới đây thể hiện cách triển khai nowdoc.
<?php $baby_name = "Shalon"; $my_variable = <<<'EOT' When $baby_name was a baby, She used to look like a "boy". EOT; echo $my_variable; ?>
Đầu ra:
When $baby_name was a baby, She used to look like a "boy".
Ví dụ về hàm chuỗi PHP
Các hàm chuỗi trong PHP được sử dụng để thao tác các giá trị chuỗi.
Bây giờ chúng ta sẽ xem xét một số hàm xử lý chuỗi thường dùng trong PHP.
| Chức năng | Mô tả Chi tiết | Ví dụ | Đầu ra |
|---|---|---|---|
| strtower | Được sử dụng để chuyển đổi tất cả các ký tự chuỗi thành chữ thường | echo strtolower('Benjamin'); | kết quả đầu ra benjamin |
| người đi đường | Được sử dụng để chuyển đổi tất cả các ký tự chuỗi thành chữ hoa | echo strtoupper('george w bush'); | đầu ra GEORGE W BUSH |
| kéo dài | Hàm đếm độ dài chuỗi được sử dụng để đếm số ký tự trong một chuỗi. Khoảng trắng giữa các ký tự cũng được tính. | echo strlen('Hoa Kỳ'); | 24 |
| phát nổ | Được sử dụng để chuyển đổi chuỗi thành biến mảng | $settings = nổ(';', “host=localhost; db=sale; uid=root; pwd=demo”); print_r($settings); | Mảng ( [0] => Host=localhost [1] => db=sale [2] => uid=root [3] => pwd=demo ) |
| chất nền | Hàm này được dùng để trả về một phần của chuỗi. Nó chấp nhận ba tham số cơ bản: chuỗi cần rút ngắn, vị trí bắt đầu và số ký tự cần trả về. | $my_var = 'Đây là một câu rất dài mà tôi muốn cắt ngắn';echo substr($my_var,0, 12).'…'; | Đây là một lần nữa… |
| str_replace | Được sử dụng để định vị và thay thế các giá trị chuỗi cụ thể trong một chuỗi cho trước. chức năng Hàm này chấp nhận ba tham số: văn bản cần thay thế, văn bản thay thế và văn bản được phân tích. | echo str_replace('the', 'cái đó', 'máy tính xách tay đắt lắm'); | chiếc máy tính xách tay đó rất đắt |
| strpos | Hàm này được sử dụng để xác định và trả về vị trí của một hoặc nhiều ký tự trong một chuỗi. Hàm này chấp nhận hai đối số. | echo strpos('Lập trình PHP','Chuyên nghiệp'); | 4 |
| sha1 | Được sử dụng để tính hàm băm SHA-1 của giá trị chuỗi | echo sha1('mật khẩu'); | 5baa61e4c9b93f3f0682250b6cf8331b7ee68fd8 |
| md5 | Được sử dụng để tính toán mã băm MD5 của một giá trị chuỗi. | echo md5('mật khẩu'); | 5f4dcc3b5aa765d61d8327deb882cf99 |
| str_word_count | Dùng để đếm số từ trong một chuỗi. | echo str_word_count('Đây là một câu rất dài mà tôi muốn rút ngắn lại'); | 12 |
| ucfirst | Viết hoa ký tự đầu tiên của giá trị chuỗi | echo ucfirst('tôn trọng'); | Đầu ra Tôn trọng |
| đầu tiên | Viết ký tự đầu tiên của giá trị chuỗi thành chữ thường | echo lcfirst('TÔN TRỌNG'); | Kết quả đầu ra TÔN TRỌNG |


