Cách thao tác văn bản trong PHP với 9 hàm này

Chuỗi là một trong những kiểu vô hướng cơ bản trong nhiều ngôn ngữ lập trình, bao gồm cả PHP. Chúng đại diện cho dữ liệu văn bản, từ các ký tự riêng lẻ đến toàn bộ tài liệu.

Lập trình chuỗi đơn giản nhất liên quan đến văn bản một byte, có thể đại diện cho 256 ký tự khác nhau. ASCII là kiểu mã hóa phổ biến nhất. Ngôn ngữ PHP cốt lõi có nhiều chức năng hữu ích để thao tác các chuỗi như vậy.

Cách hiển thị nội dung của một chuỗi

Nếu bạn đã thực hiện bất kỳ lập trình nào bằng PHP, có thể bạn đã bắt gặp echo , nhưng bạn có thể không nhận ra rằng nó thực sự không phải là một chức năng nào cả. Trên thực tế, echo là một cấu trúc ngôn ngữ, vì vậy ngay cả khi bạn sử dụng nó nhiều hơn bất kỳ hàm chuỗi thực nào, bạn không phải lúc nào cũng sử dụng nó thay cho một hàm.

Hầu như bạn sẽ luôn sử dụng nó như thế này:

echo "Hello, world";

Nhưng bạn thực sự có thể gọi nó giống như một hàm:

echo("Hello, world");

Mặc dù trông giống như vậy, nhưng đây vẫn không thực sự là một cuộc gọi hàm. Ví dụ: bạn không thể gán giá trị trả về của nó cho một biến:

$a = echo("Hello, world"); Parse error: syntax error, unexpected 'echo' (T_ECHO)

Một cách khác để xuất giá trị của chuỗi là sử dụng print. Một lần nữa, đây không thực sự là một chức năng đúng, mặc dù nó gần với một chức năng hơn là tiếng vang. Giống như echo, bạn có thể gọi nó mà không có dấu ngoặc đơn:

print "Hello, world";

Nhưng, không giống như echo, nó trả về một giá trị mà bạn có thể gán, mặc dù giá trị đó luôn là 1:

$a = print("Hello, world"); echo $a; // 1

1. Xuất một chuỗi bằng một hàm thực

Hàm printf thực sự là một hàm thực. Giống như echo  và print , nó xuất ra các chuỗi, nhưng nó có một số hành vi duy nhất phản ánh cùng một chức năng từ ngôn ngữ c:

$username = "John"; $length = printf("Hello, %s", $username); // "Hello, John" echo $length; // 11

Đối số đầu tiên vẫn là một chuỗi, được đặt trong dấu ngoặc kép. Nhưng printf sẽ thực hiện các thay thế khác nhau trên các chuỗi ký tự đặc biệt bên trong chuỗi. Các chuỗi này bắt đầu bằng ký hiệu phần trăm, giống như ở trên, % s . Trong trường hợp cụ thể này,% s là viết tắt của một chuỗi và printf thay thế nó bằng đối số tiếp theo, là giá trị của $ username .

Hàm printf trả về một giá trị hữu ích, độ dài của chuỗi được định dạng. Điều này có thể hữu ích đối với mã không thể biết trước độ dài , ví dụ: khi chuyển các biến cho printf . Bạn có thể sử dụng giá trị trả về đó để xác định bao nhiêu không gian vật lý mà chuỗi sẽ chiếm trên một dòng lệnh.

2. Lấy độ dài của một chuỗi

Nói về độ dài chuỗi, cách tiêu chuẩn để xác định độ dài của chuỗi là hàm strlen . Hàm này rất đơn giản: nó nhận một đối số chuỗi đơn và trả về số byte dưới dạng số nguyên. Như đã đề cập trước đó, đối với văn bản ASCII , số byte bằng với số ký tự:

$length = strlen("Hello, World"); echo $length; // 12

3. Trích xuất một phần của chuỗi

Một nhiệm vụ rất phổ biến, khi xử lý các chuỗi, là trích xuất một phần của chuỗi đó. Có một số cách để thực hiện việc này và cách đầu tiên được trình bày ở đây chỉ định vị trí và độ dài của chuỗi con được yêu cầu. Hàm substr trích xuất một phần cố định của chuỗi theo các tham số này.

$greeting = substr("Hello, World", 0, 5); echo $greeting; // "Hello"

Lưu ý rằng, như trong hầu hết các ngôn ngữ lập trình, PHP đếm các hiệu số chuỗi từ 0. PHP khác với một số ngôn ngữ ở chỗ tham số thứ hai của hàm này là độ dài của chuỗi kết quả.

Liên quan: Ngôn ngữ lập trình tồi tệ nhất và khó nhất

Một điểm khác biệt nữa là PHP hỗ trợ các giá trị âm cho cả độ lệch và độ dài. Nếu offset là số âm, kết quả sẽ bắt đầu được đếm từ cuối chuỗi, không phải từ đầu:

$greeting = substr("Hello, World", -5, 5); echo $greeting; // "World"

Nếu độ dài là số âm, nó sẽ đề cập đến số ký tự bị xóa, thay vì số được bao gồm:

$greeting = substr("Hello, World", 0, -6); echo $greeting; // "Hello,"

4. Tìm kiếm trong một chuỗi

Một phần quan trọng của quá trình xử lý văn bản liên quan đến việc tìm kiếm vị trí của một chuỗi trong chuỗi khác. Trong PHP, bạn có thể đạt được điều này với hàm strpos :

$pos = strpos("Hello, World", ","); echo $pos; // 5

Bạn có thể sử dụng strpos kết hợp với substr  để cung cấp một phương pháp có mục đích chung hơn để trích xuất một phần của chuỗi:

$string = "Hello, World"; $pos = strpos($string, ","); $first_part = substr($string, 0, $pos); echo $first_part; // "Hello"

5. Chuyển đổi trường hợp của một chuỗi

Chuỗi ASCII truyền thống có các biến thể chữ hoa và chữ thường được xác định rõ ràng. Chữ viết hoa của a là A. Chữ thường của Z là z. Các hàm strtoupperstrtolower  thực hiện các chuyển đổi này. Họ làm như vậy cho mỗi ký tự trong chuỗi ASCII:

$original = "hello, WORLD"; $upper = strtoupper($original); $lower = strtolower($original); echo "$lower $upper"; // "hello, world HELLO, WORLD"

6. Loại bỏ khoảng trắng

Đôi khi, bạn sẽ kết thúc với một chuỗi có khoảng trắng ở đầu hoặc ở cuối: dấu cách, tab hoặc ký tự dòng mới. Điều này thường không mong muốn, nhưng việc cắt tỉa có thể loại bỏ nó:

$trimmed = trim(" Hello, World "); echo $trimmed; // "Hello, World"

7. Chia nhỏ chuỗi bằng dấu phân cách

Các nổ chức năng âm thanh nguy hiểm nhưng không lo lắng, nó không gây ra bất kỳ thiệt hại lâu dài! Thay vào đó, nó chuyển đổi một chuỗi thành một mảng chuỗi, được phân tách bằng một chuỗi khác - thường là một ký tự. Nó có thể hữu ích nếu bạn muốn chia một câu thành các từ riêng biệt, chẳng hạn.

$sentence = "The quick brown fox jumps over the lazy dog"; $words = explode(" ", $sentence);

Biến $ words bây giờ là một mảng chứa các từ riêng lẻ:

[ "The", "quick", "brown", "fox", "jumps", "over", "the", "lazy", "dog" ]

8. Chia nhỏ một chuỗi thành các chuỗi con có độ dài cố định

Giống như nổ tung , các  str_split  phá vỡ chức năng lên một chuỗi thành một mảng các chuỗi nhỏ hơn. Không giống như bùng nổ, các chuỗi cuối cùng không được xác định bởi nội dung của chúng, mà bởi độ dài của chúng.

$parts = str_split("Hello, World", 6);

Các $ phần mảng bây giờ chứa hai chuỗi con, mỗi người sáu nhân vật có chiều dài:

[ "Hello,", " World" ]

9. Tìm kiếm và thay thế trong một chuỗi

Bạn có thể thực hiện một thao tác tìm kiếm và thay thế đơn giản trên một chuỗi bằng cách sử dụng str_replace . Cần ba đối số: một chuỗi để tìm kiếm, một chuỗi thay thế và một chuỗi ban đầu để tìm kiếm. Hàm trả về chuỗi mới:

$result = str_replace("o", "OO", "Hello, World"); echo $result; // "HellOO, WOOrld"

PHP cung cấp nhiều cách hữu ích để làm việc với văn bản

Vì PHP thường được sử dụng trong phát triển web, xử lý văn bản là một nhiệm vụ phổ biến.

Các hàm được trình bày ở đây là một trong những hàm hữu ích nhất để xử lý văn bản bằng PHP. Có khoảng một trăm hàm xử lý chuỗi được tích hợp trong chính ngôn ngữ này.

Hãy nhớ rằng các hàm được hiển thị ở đây được sử dụng với chuỗi ASCII, không phải các hàm Unicode. PHP cũng hỗ trợ Unicode và các lược đồ mã hóa ký tự đa byte khác, với một bộ hàm riêng biệt .


Cách sử dụng Python làm máy tính dòng lệnh

Cách sử dụng Python làm máy tính dòng lệnh

Trong khi bạn có thể sử dụng máy tính đồ họa trên máy tính của mình, trình thông dịch ngôn ngữ lập trình Python có thể đóng vai trò như một máy tính bàn. Đó là một trò đùa chạy phổ biến trong cộng đồng Python mà nó đã được đề cập trong hướng dẫn chính thức. Đây là cách bạn có thể sử dụng Python làm máy tính.

8 blog Java tốt nhất dành cho lập trình viên

8 blog Java tốt nhất dành cho lập trình viên

Là một lập trình viên, bạn nên chấp nhận những thách thức để tồn tại và xây dựng một số kỳ quan trong lĩnh vực phát triển hoặc lập trình. Do đó, nếu bạn đang muốn học một ngôn ngữ lập trình nâng cao để nâng cao kỹ năng nghề nghiệp của mình, thì Java là một trong những triển vọng tốt nhất.

7 lệnh quan trọng để bắt đầu với Python cho người mới bắt đầu

7 lệnh quan trọng để bắt đầu với Python cho người mới bắt đầu

Học một ngôn ngữ lập trình mới như Python sẽ trở nên dễ dàng nếu bạn có một lộ trình toàn diện nêu chi tiết những khái niệm nào cần học khi mới bắt đầu và cách tiến bộ hơn nữa để đạt được cột mốc quan trọng tiếp theo. Ngay cả những lập trình viên trung cấp cũng nên thường xuyên học lại những kiến ​​thức cơ bản của họ để xây dựng nền tảng vững chắc cho bản thân.

5 Tính năng hữu ích của Java 8 Date and Time API

5 Tính năng hữu ích của Java 8 Date and Time API

Vào năm 2014, việc phát hành Java 8 đã giới thiệu một API ngày và giờ mới. Bạn có thể dễ dàng truy cập API này bằng cách nhập gói java.time.

Hiểu Bản đồ và Bộ trong JavaScript

Hiểu Bản đồ và Bộ trong JavaScript

Cấu trúc dữ liệu là xương sống của bất kỳ ngôn ngữ lập trình nào. Ví dụ bao gồm danh sách được liên kết, cây, ngăn xếp, hàng đợi và đồ thị. Trong bài này, bạn sẽ học cách sử dụng bản đồ và thiết lập cấu trúc dữ liệu trong JavaScript.

Nguyên tắc thiết kế web đáp ứng

Nguyên tắc thiết kế web đáp ứng

Ngày nay, việc xây dựng một trang web hoặc ứng dụng điều chỉnh giao diện người dùng của nó tùy thuộc vào trình duyệt hoặc thiết bị. Có hai cách tiếp cận để đạt được mục tiêu này. Đầu tiên liên quan đến việc tạo các phiên bản khác nhau của trang web hoặc ứng dụng của bạn cho các thiết bị khác nhau. Nhưng nó không hiệu quả và có thể dẫn đến các lỗi không thể đoán trước.

Cách sử dụng For Loops trong Python

Cách sử dụng For Loops trong Python

Giống như bất kỳ ngôn ngữ lập trình nào khác, lặp trong Python là một cách tuyệt vời để tránh viết mã lặp lại. Tuy nhiên, không giống như vòng lặp while của Pythons, vòng lặp for là một câu lệnh dòng điều khiển cuối cùng cung cấp cho bạn nhiều quyền hơn đối với từng mục trong một chuỗi.

Giới thiệu về cách sử dụng NLTK với Python

Giới thiệu về cách sử dụng NLTK với Python

Xử lý ngôn ngữ tự nhiên là một khía cạnh của học máy cho phép bạn xử lý các từ đã viết thành một ngôn ngữ thân thiện với máy. Các văn bản như vậy sau đó có thể điều chỉnh được và bạn có thể chạy các thuật toán tính toán trên chúng theo ý muốn.

Cách đếm số chữ số trong một số bằng C ++, Python và JavaScript

Cách đếm số chữ số trong một số bằng C ++, Python và JavaScript

Làm việc với các con số là một phần không thể thiếu trong lập trình. Mọi ngôn ngữ lập trình đều cung cấp hỗ trợ để thao tác với các con số theo nhiều cách khác nhau. Trong bài viết này, bạn sẽ học cách tìm tổng số chữ số trong một số nguyên bằng cách sử dụng các phương pháp lặp lại, dựa trên nhật ký và dựa trên chuỗi.

9 giải pháp thay thế Docker tốt nhất để quản lý vùng chứa

9 giải pháp thay thế Docker tốt nhất để quản lý vùng chứa

Vùng chứa rất có lợi cho việc phát triển, triển khai và quản lý phần mềm trong môi trường ảo. Docker hữu ích trong quá trình container hóa, nhưng nó không phải là nền tảng duy nhất xung quanh. Nếu bạn đang tìm kiếm một số lựa chọn thay thế cho Docker, không cần tìm đâu xa. Danh sách này giới thiệu một số lựa chọn thay thế Docker hiệu quả và giàu tính năng để sử dụng trong dự án tiếp theo của bạn.

SQL so với NoSQL: Cơ sở dữ liệu tốt nhất cho dự án tiếp theo của bạn là gì?

SQL so với NoSQL: Cơ sở dữ liệu tốt nhất cho dự án tiếp theo của bạn là gì?

SQL so với NoSQL: Cơ sở dữ liệu tốt nhất cho dự án tiếp theo của bạn là gì?

Bắt đầu với CSS Pseudo-Class và Pseudo-Elements

Bắt đầu với CSS Pseudo-Class và Pseudo-Elements

Bạn có thể sử dụng bộ chọn CSS để nhắm mục tiêu và tạo kiểu cho các phần tử trong trang web. Một bộ chọn tiêu chuẩn có thể nhắm mục tiêu một đoạn văn cụ thể hoặc tất cả các tiêu đề ở một cấp độ nhất định. Bộ chọn giả tiến xa hơn một bước, cho phép bạn nhắm mục tiêu các phần của trang với nhiều sắc thái hơn.

7 xu hướng thiết kế WordPress hàng đầu trong năm 2021

7 xu hướng thiết kế WordPress hàng đầu trong năm 2021

Xu hướng thiết kế WordPress là hướng đi cho các trang web WordPress theo thứ tự ngành công nghiệp đang phát triển. Việc thực hiện đúng các xu hướng thiết kế có thể đưa trang web của bạn lên đầu các trang web cạnh tranh khác.

Cách nhúng Tweet vào bài viết WordPress của bạn

Cách nhúng Tweet vào bài viết WordPress của bạn

Nhúng các dịch vụ của bên thứ ba vào các bài đăng WordPress của bạn là một cách thú vị để thu hút sự quan tâm của khách truy cập. Nội dung được nhúng cũng cung cấp các dấu hiệu trực quan giúp quét dễ dàng hơn. WordPress đã làm cho việc thêm loại nội dung này trở nên dễ dàng.

Cách xóa thư mục mô-đun nút bằng npkill

Cách xóa thư mục mô-đun nút bằng npkill

Node.js là một môi trường thời gian chạy JavaScript cho phép bạn chạy JavaScript bên ngoài trình duyệt web, làm cho nó trở thành một lựa chọn phổ biến để phát triển tất cả các loại ứng dụng. Một phần của sự phổ biến của nó là do có rất nhiều gói NPM để giúp nhà phát triển dễ dàng trải nghiệm.

Cách viết và biên dịch mã vững chắc đầu tiên của bạn

Cách viết và biên dịch mã vững chắc đầu tiên của bạn

Solidity là ngôn ngữ lập trình được sử dụng bởi các hợp đồng thông minh trên chuỗi khối Ethereum. Nó là một ngôn ngữ lập trình hướng đối tượng, được định kiểu tĩnh.

Cách giữ cho mã của bạn sạch sẽ bằng cách đóng gói đối tượng

Cách giữ cho mã của bạn sạch sẽ bằng cách đóng gói đối tượng

Encapsulation có nghĩa là giữ một cái gì đó bị cô lập. Nếu bạn đặt một cái gì đó trong một viên nang, thế giới bên ngoài sẽ không thể truy cập vào nó. Đóng gói là một khái niệm quan trọng trong lập trình hướng đối tượng vì nó giúp giữ cho mã phức tạp có thể quản lý được.

7 nghề nghiệp thú vị cần cân nhắc với tư cách là một lập trình viên

7 nghề nghiệp thú vị cần cân nhắc với tư cách là một lập trình viên

Lập trình cung cấp cho bạn một bộ công cụ rất hữu ích mà bạn có thể áp dụng theo nhiều cách khác nhau. Có những công việc phổ biến hơn hoặc được trả lương cao, nhưng cũng có những lựa chọn khác - những nghề nghiệp có sức hấp dẫn riêng.

9 dấu hiệu cho thấy bạn muốn trở thành một lập trình viên

9 dấu hiệu cho thấy bạn muốn trở thành một lập trình viên

Nếu bạn lớn lên xung quanh máy tính và có sở trường về CNTT, bạn có thể có những gì cần thiết để trở thành một lập trình viên. Cần rất nhiều công việc để cạnh tranh trong thị trường việc làm hiện đại, vì vậy việc có các kỹ năng phù hợp sẽ mang lại lợi thế cho bạn.

Cách sử dụng Python làm máy tính dòng lệnh

Cách sử dụng Python làm máy tính dòng lệnh

Trong khi bạn có thể sử dụng máy tính đồ họa trên máy tính của mình, trình thông dịch ngôn ngữ lập trình Python có thể đóng vai trò như một máy tính bàn. Đó là một trò đùa chạy phổ biến trong cộng đồng Python mà nó đã được đề cập trong hướng dẫn chính thức. Đây là cách bạn có thể sử dụng Python làm máy tính.

8 blog Java tốt nhất dành cho lập trình viên

8 blog Java tốt nhất dành cho lập trình viên

Là một lập trình viên, bạn nên chấp nhận những thách thức để tồn tại và xây dựng một số kỳ quan trong lĩnh vực phát triển hoặc lập trình. Do đó, nếu bạn đang muốn học một ngôn ngữ lập trình nâng cao để nâng cao kỹ năng nghề nghiệp của mình, thì Java là một trong những triển vọng tốt nhất.

7 lệnh quan trọng để bắt đầu với Python cho người mới bắt đầu

7 lệnh quan trọng để bắt đầu với Python cho người mới bắt đầu

Học một ngôn ngữ lập trình mới như Python sẽ trở nên dễ dàng nếu bạn có một lộ trình toàn diện nêu chi tiết những khái niệm nào cần học khi mới bắt đầu và cách tiến bộ hơn nữa để đạt được cột mốc quan trọng tiếp theo. Ngay cả những lập trình viên trung cấp cũng nên thường xuyên học lại những kiến ​​thức cơ bản của họ để xây dựng nền tảng vững chắc cho bản thân.

5 Tính năng hữu ích của Java 8 Date and Time API

5 Tính năng hữu ích của Java 8 Date and Time API

Vào năm 2014, việc phát hành Java 8 đã giới thiệu một API ngày và giờ mới. Bạn có thể dễ dàng truy cập API này bằng cách nhập gói java.time.

Hiểu Bản đồ và Bộ trong JavaScript

Hiểu Bản đồ và Bộ trong JavaScript

Cấu trúc dữ liệu là xương sống của bất kỳ ngôn ngữ lập trình nào. Ví dụ bao gồm danh sách được liên kết, cây, ngăn xếp, hàng đợi và đồ thị. Trong bài này, bạn sẽ học cách sử dụng bản đồ và thiết lập cấu trúc dữ liệu trong JavaScript.

Nguyên tắc thiết kế web đáp ứng

Nguyên tắc thiết kế web đáp ứng

Ngày nay, việc xây dựng một trang web hoặc ứng dụng điều chỉnh giao diện người dùng của nó tùy thuộc vào trình duyệt hoặc thiết bị. Có hai cách tiếp cận để đạt được mục tiêu này. Đầu tiên liên quan đến việc tạo các phiên bản khác nhau của trang web hoặc ứng dụng của bạn cho các thiết bị khác nhau. Nhưng nó không hiệu quả và có thể dẫn đến các lỗi không thể đoán trước.

8 Plugin truyền thông xã hội tốt nhất cho WordPress

8 Plugin truyền thông xã hội tốt nhất cho WordPress

Bạn cần phương tiện truyền thông xã hội để quảng bá trang web WordPress của mình và giữ cho nó có liên quan. Khi thiết kế miền, bạn có thể gắn bó với các công cụ tiêu chuẩn như các tính năng xã hội của Jetpacks — an toàn, quen thuộc, đa chức năng. Tuy nhiên, có những lựa chọn thay thế tuyệt vời có thể khiến bạn trở nên khác biệt so với đối thủ.

Cách sử dụng For Loops trong Python

Cách sử dụng For Loops trong Python

Giống như bất kỳ ngôn ngữ lập trình nào khác, lặp trong Python là một cách tuyệt vời để tránh viết mã lặp lại. Tuy nhiên, không giống như vòng lặp while của Pythons, vòng lặp for là một câu lệnh dòng điều khiển cuối cùng cung cấp cho bạn nhiều quyền hơn đối với từng mục trong một chuỗi.

Giới thiệu về cách sử dụng NLTK với Python

Giới thiệu về cách sử dụng NLTK với Python

Xử lý ngôn ngữ tự nhiên là một khía cạnh của học máy cho phép bạn xử lý các từ đã viết thành một ngôn ngữ thân thiện với máy. Các văn bản như vậy sau đó có thể điều chỉnh được và bạn có thể chạy các thuật toán tính toán trên chúng theo ý muốn.

Cách đếm số chữ số trong một số bằng C ++, Python và JavaScript

Cách đếm số chữ số trong một số bằng C ++, Python và JavaScript

Làm việc với các con số là một phần không thể thiếu trong lập trình. Mọi ngôn ngữ lập trình đều cung cấp hỗ trợ để thao tác với các con số theo nhiều cách khác nhau. Trong bài viết này, bạn sẽ học cách tìm tổng số chữ số trong một số nguyên bằng cách sử dụng các phương pháp lặp lại, dựa trên nhật ký và dựa trên chuỗi.