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 ký tự là gì: Chuỗi (string) là một dãy các ký tự và là kiểu dữ liệu cốt lõi của PHP được sử dụng để lưu trữ văn bản như tên, thông báo và HTML.
  • ' Trích dẫn đơn: Chuỗi được đặt trong dấu ngoặc đơn là chuỗi ký tự nguyên văn; các biến không được mở rộng, và chỉ có dấu ngoặc kép thoát và dấu gạch chéo ngược mới được diễn giải.
  • " Double Dấu ngoặc kép: DoubleChuỗi được trích dẫn mở rộng các biến và diễn giải các ký tự thoát như \n, khiến chúng trở nên lý tưởng cho văn bản động.
  • 📄 Heredoc: Heredoc xây dựng chuỗi nhiều dòng bằng cách mở rộng biến, không cần escaping dấu ngoặc kép bên trong chúng.
  • 🔒 Nowdoc: Nowdoc hoạt động giống như dấu ngoặc đơn cho văn bản thô nhiều dòng, không thực hiện phân tích cú pháp hay mở rộng biến.
  • 🔧 Các hàm xử lý chuỗi: Các hàm như strlen, strpos, substr, str_replace và explode kiểm tra và biến đổi giá trị chuỗi.
  • 🤖 Hỗ trợ AI: Các công cụ AI có thể đề xuất hàm xử lý chuỗi phù hợp cho một tác vụ và tạo ra các công cụ hỗ trợ làm sạch hoặc định dạng.

Chuỗi PHP

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";
?>

PHP Tạo chuỗi bằng cách sử dụng Double dấu ngoặc kép

ĐÂ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.

Tài liệu PHP

Đầ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

Câu Hỏi Thường Gặp

Sử dụng toán tử dấu chấm để nối các chuỗi, ví dụ: `$full = $first . ' ' . $last;`. Bạn cũng có thể thêm vào một chuỗi hiện có bằng toán tử `.=`, toán tử này sẽ thêm văn bản vào cuối biến.

Trong PHP 8, hãy sử dụng str_contains($haystack, $needle), hàm này trả về true hoặc false. Trong các phiên bản cũ hơn, hãy sử dụng strpos() và kiểm tra xem kết quả có khác false hay không, vì việc khớp ở vị trí 0 là falsy.

Chuỗi PHP có thể thay đổi và có thể được truy cập bằng chỉ mục giống như mảng. Đọc một ký tự bằng `$str[0]` và thậm chí thay đổi nó bằng `$str[0] = 'H'`. Chỉ mục được tính từ 0, vì vậy ký tự đầu tiên nằm ở vị trí 0.

Đúng vậy. Trí tuệ nhân tạo có thể viết các hàm hỗ trợ loại bỏ khoảng trắng, gỡ bỏ thẻ, chuẩn hóa chữ hoa chữ thường hoặc chuyển đổi văn bản thành dạng slug, bằng cách kết hợp các chức năng như trim, strip_tags và preg_replace. RevHãy xem lại các quy tắc để đảm bảo chúng khớp chính xác với dữ liệu bạn nhập vào.

Vâng. Hãy mô tả mục tiêu, chẳng hạn như tìm kiếm, thay thế hoặc tách văn bản, và AI có thể chỉ cho bạn các hàm như strpos, str_replace, substr hoặc explode, đồng thời hiển thị một ví dụ ngắn cho mỗi hàm.

Tóm tắt bài viết này với: