× Giới thiệu Lịch khai giảng Tin tức Sản phẩm học viên

String trong PHP - 5 phút tìm hiểu nhanh về String trong PHP

23/06/2021 01:32

Chuỗi hay còn gọi là String trong PHP được xem như một dòng ký tự. Ví dụ:”G” là một ký tự và “Greenevergreen” sẽ là một chuỗi. Trong bài trước, chúng ta đã tìm hiểu về những điều cơ bản về kiểu dữ liệu chuỗi trong PHP. Trong bài viết này, chúng ta sẽ thảo luận chi tiết hơn về string trong PHP.

Khái niệm String trong PHP

Mọi thành phần nằm trong dấu ngoặc kép, đơn (‘’) và kép (“”) trong PHP đều được coi là một chuỗi.

Khái niệm String trong PHP

Khái niệm String trong PHP

Có hai cách để tạo string trong PHP như sau:

Cách 1: Single - quote strings (chuỗi đơn): Loại chuỗi này không xử lý các ký tự đặc biệt bên trong dấu ngoặc kép như sau:

<?php

  

// single-quote strings 

  

$site  = 'Welcome to GeeksforGeeks';

  

echo $site;

   

?>

Output

Welcome to GeeksforGeeks

Chương trình trên được biên dịch chính xác và tạo một chuỗi “Welcome to GeeksforGeeks” và lưu trữ nó trong biến cũng như print nó bằng câu lệnh echo.

Bây giờ ta sẽ có chương trình như sau:

 

Output

<?php
  // single-quote strings 
  $site  = 'GeeksforGeeks';
  echo 'Welcome to $site';
   ?>

Welcome to $site

Trong chương trình trên, câu lệnh echo in ra tên biến thay vì in nội dung của các biến. Điều này là do, các chuỗi dấu ngoặc đơn trong PHP không xử lý các ký tự đặc biệt. Do đó, chuỗi không thể xác định dấu '$' là đầu của tên biến.

Cách 2: Double- quote strings: Không giống Single - quote strings, double-quote strings trong PHP có khả năng xử lý ký tự đặc biệt.

<?php

// double-quote strings  

echo "Welcome to GeeksforGeeks \n"; 

$site  = "GeeksforGeeks"; 

echo "Welcome to $site";  

?>

Output

Welcome to GeeksforGeeks

Welcome to GeeksforGeeks

Đọc thêm: Lỗi và ngoại lệ trong PHP - Tìm hiểu về lỗi và ngoại lệ trong PHP

 

Cách xử lý các loại String trong PHP

Trong chương trình trên, chúng ta có thể thấy rằng các Double- quote strings đang xử lý các ký tự đặc biệt theo thuộc tính của chúng. Ký tự '\ n' không được in và được coi là một dòng mới. Ngoài ra, thay vì tên biến $ site, “GeeksforGeeks” được in. 

Cách xử lý các loại String trong PHP

Cách xử lý các loại String trong PHP

PHP xử lý mọi thứ bên trong dấu ngoặc kép (“”) là String. Trong bài viết này, chúng ta sẽ sẽ tìm  hiểu về hoạt động của các hàm chuỗi khác nhau và cách triển khai chúng cùng với một số thuộc tính đặc biệt của chuỗi. Không giống như các kiểu dữ liệu khác như số nguyên hay nhân,... Chuỗi không có bất kỳ giới hạn hoặc phạm vị cố định nào. Nó có thể kéo dài đến bất kỳ độ dài nào miễn là nó nằm trong dấu ngoặc kép.

 Thông thường các chuỗi trong dấu ngoặc kép bỏ qua các ký tự đặc biệt nhưng các chuỗi trong dấu ngoặc kép nhận ra các ký tự đặc biệt và xử lý chúng theo các cách khác nhau.

Ví dụ:

<?php

$name = "Krishna";

echo "The name of the geek is $name \n";

echo 'The name of the geek is $name';

   

?>

Output

The name of the geek is Krishna 

The name of the geek is $name

Một số ký tự đặc biệt quan trọng và được sử dụng thường xuyên được sử dụng với double-quoted strings (chuỗi dấu ngoặc kép) được giải thích dưới đây:

  • Ký tự bắt đầu bằng dấu gạch chéo ngược (“\”) được coi là chuỗi thoát và được thay thế bằng các ký tự đặc biệt. Dưới đây là một số trình tự thoát quan trọng.
    1. “\ N” được thay thế bằng một dòng mới
    2. “\ T” được thay thế bằng không gian tab
    3. “\ $” Được thay thế bằng ký hiệu đô la
    4. “\ R” được thay thế bằng dấu xuống dòng
    5. “\\” ​​được thay thế bằng dấu gạch chéo ngược
    6. “\” ”Được thay thế bằng một dấu ngoặc kép
    7. “\ '” Được thay thế bằng một dấu ngoặc kép
  • Chuỗi bắt đầu bằng ký hiệu đô la (“$”) được coi là biến và được thay thế bằng nội dung của biến.

>>> Đọc thêm: Filter trong PHP - Giải mã thông tin về Filter trong PHP

Các chức năng chuỗi tích hợp trong PHP

Các hàm tích hợp sẵn trong PHP là một số hàm thư viện hiện có, có thể được sử dụng trực tiếp trong các chương trình để thực hiện một số lệnh gọi thích hợp đến chúng. Dưới đây  là một số hàm string tích hợp quan trọng thường được sử dụng thường xuyên trong các chương trình:

Hàm strlen: Hàm này dùng để tìm độ dài của một chuỗi. Hàm này chấp nhận chuỗi làm đối số và trả về độ dài hoặc số ký tự trong chuỗi.

Ví dụ:

<?php

   

echo strlen("Hello GeeksforGeeks!");

   

?>

 

Output

20

 Hàm strrev: hàm này dùng để đảo ngược một chuỗi. Hàm này chấp nhận một chuỗi làm đối số và trả về chuỗi đã đảo ngược của nó.

Ví dụ:

<?php
   echo strrev("Hello GeeksforGeeks!");

   ?>

Output

!skeeGrofskeeG olleH

Hàm str_replace(): Hàm này nhận ba chuỗi làm đối số. Đối số thứ ba là chuỗi gốc và đối số đầu tiên được thay thế bằng đối số thứ hai. Nói cách khác, nó thay thế tất cả các lần xuất hiện của đối số đầu tiên trong chuỗi gốc bằng đối số thứ hai.

Ví dụ:

<?php

echo str_replace("Geeks", "World", "Hello GeeksforGeeks!"), "\n";

echo str_replace("for", "World", "Hello GeeksforGeeks!"), "\n";  

?>

Output

Hello WorldforWorld!

Hello GeeksWorldGeeks!

Trong ví dụ đầu tiên, chúng ta có thể thấy tất cả lần xuất hiện của từ Geeks được thay thế bằng từ World trong Hello GeeksforGeeks!

Hàm strpos(): Hàm này nhận hai đối số chuỗi và nếu chuỗi thứ hai xuất hiện trong chuỗi đầu tiên, nó sẽ trả về vị trí bắt đầu của chuỗi, nếu không sẽ trả về FALSE. Ví dụ:

<?php

  

echo strpos("Hello GeeksforGeeks!", "Geeks"), "\n";

  

echo strpos("Hello GeeksforGeeks!", "for"), "\n";

  

var_dump(strpos("Hello GeeksforGeeks!", "Peek"));

  

?>

Output

6

11

bool(false)

Chúng ta có thể thấy, trong chương trình trên, ở ví dụ thứ ba chuỗi “Peek” không xuất hiện trong chuỗi đầu tiên, do đó hàm này trả về giá trị boolean false cho biết rằng chuỗi này không hiện diện.

Hàm trim(): Hàm này cho phép chúng ta di chuyển khoảng trắng hoặc chuỗi từ cả hai bên của một chuỗi. Ví dụ:

<?php

  

echo trim("Hello World!", "Hed!");

  

?>

Đầu ra:

llo Worl

Kết luận: Bài viết trên đã giới thiệu tới bạn về string trong PHP và một số cách tạo string. Hy vọng các thông tin trên đây hữu ích với bạn. Cùng tìm hiểu thêm về các ngôn ngữ lập trình qua các khóa học lập trình tại tại Viện công nghệ thông tin T3H.