Các chuỗi trong PHP có thể được chỉ định theo bốn cách khác nhau. trích dẫn đơn, trích dẫn kép, cú pháp heredoc và [kể từ PHP 5. 3. 0] cú pháp nowdoc, hai cú pháp đầu tiên được sử dụng thường xuyên nhất
Điều quan trọng là phải biết sự khác biệt giữa việc sử dụng dấu ngoặc đơn và dấu ngoặc kép. Trong bài đăng này, chúng ta sẽ thấy sự khác biệt giữa chúng và cái nào nên được sử dụng khi
Chuỗi trích dẫn đơn là cách dễ nhất để chỉ định chuỗi. Phương thức này được sử dụng khi chúng ta muốn chuỗi chính xác như được viết. Khi chuỗi được chỉ định trong dấu nháy đơn, PHP sẽ không đánh giá nó hoặc diễn giải các ký tự thoát ngoại trừ dấu nháy đơn có dấu gạch chéo ngược [‘] và dấu gạch chéo ngược [\] phải được thoát
echo 'This is \'test\' string'; //Output: This is 'test' string
Trong các chuỗi trích dẫn kép, các chuỗi thoát khác cũng được diễn giải, bất kỳ biến nào cũng sẽ được thay thế bằng giá trị của chúng
$count = 1; echo "The count is $count"; //Output: The count is 1
Nếu chúng ta sử dụng dấu ngoặc đơn thay vì dấu ngoặc kép cho ví dụ trên thì nó sẽ như thế này
$count = 1; echo 'The count is $count'; //Output: The count is $count
Tôi khuyên bạn nên sử dụng dấu ngoặc đơn [‘ ‘] cho chuỗi trừ khi chúng ta cần dấu ngoặc kép [” “]. Điều này là do dấu ngoặc kép buộc PHP phải đánh giá chuỗi [mặc dù có thể không cần thiết], trong khi chuỗi giữa các dấu ngoặc đơn không được đánh giá. Ngoài ra, phân tích các biến giữa các chuỗi chiếm nhiều bộ nhớ hơn nối
Trong PHP, chúng tôi sử dụng dấu ngoặc kép để chỉ định giá trị là một chuỗi ký tự. Có hai loại báo giá khác nhau. Chúng là dấu ngoặc đơn, dấu ngoặc kép
$count = 1; echo "The count is $count"; //Output: The count is 14 và dấu ngoặc kép
$count = 1; echo "The count is $count"; //Output: The count is 15. Tuy nhiên, chúng ta có thể chỉ định chuỗi ký tự bằng cách sử dụng cú pháp chuỗi như
$count = 1; echo "The count is $count"; //Output: The count is 16 và
$count = 1; echo "The count is $count"; //Output: The count is 17. Trong bài viết này, chúng tôi sẽ tập trung vào các trích dẫn. Chúng ta có thể bọc các chuỗi ký tự bằng dấu ngoặc đơn hoặc kép để biểu thị giá trị dưới dạng chuỗi. một ví dụ đã được biểu diễn ở dưới
Mã ví dụ
đầu ra
Trong ví dụ trên, việc sử dụng cả hai trích dẫn dường như giống nhau. Nhưng đó không chỉ là trường hợp. Chức năng của các trích dẫn là như nhau, nhưng có sự khác biệt trong cách chúng hoạt động. Chúng tôi sẽ thảo luận về sự khác biệt đáng kể giữa dấu ngoặc đơn và dấu ngoặc kép bên dưới
Sự khác biệt giữa Trích dẫn đơn và Trích dẫn kép trong quá trình nội suy chuỗi và biến trong PHP
Sự khác biệt đáng kể nhất giữa dấu ngoặc đơn và dấu ngoặc kép nằm khi chúng ta nội suy chuỗi và biến. Trích dẫn đơn không nội suy chuỗi và các biến. Nội dung bên trong trích dẫn đơn in ra chính xác như nó vốn có. Trong hầu hết các trường hợp, không có phần tổng hợp của bất kỳ biến hoặc chuỗi thoát nào bên trong dấu nháy đơn
Tuy nhiên, trong trường hợp trích dẫn kép, biến được viết bên trong dấu ngoặc kép sẽ được nội suy với chuỗi. Nó có nghĩa là biến trong chuỗi sẽ được đánh giá. Do đó, rất dễ sử dụng dấu ngoặc kép khi nội suy chuỗi và các biến. Ưu điểm của dấu ngoặc kép so với dấu ngoặc đơn là chúng ta không cần nối chuỗi và biến bằng toán tử
$count = 1; echo "The count is $count"; //Output: The count is 18. Tuy nhiên, vì các biến cần được đánh giá trong chuỗi, nên sử dụng dấu nháy kép sẽ chậm hơn một chút so với sử dụng dấu nháy đơn
Ví dụ: tạo một biến
0 và viết chuỗi
1 vào đó. Tiếp theo, viết chuỗi
2 và đặt chuỗi đó bằng dấu ngoặc kép. Sử dụng hàm
3 để in chuỗi. Tương tự, kèm theo chuỗi chính xác với một trích dẫn trong dòng sauMã ví dụ
đầu ra
The name is Bond.
The name is $name.
Như đầu ra cho thấy, biến
0 được đánh giá bằng cách sử dụng dấu ngoặc kép. Trong khi sử dụng trích dẫn đơn, chuỗi được in theo cách của nó. Đây là một trong những điểm khác biệt đáng kể giữa dấu ngoặc đơn và dấu ngoặc kép trong PHPSự khác biệt giữa Trích dẫn đơn và Trích dẫn kép khi thoát dấu nháy đơn trong PHP
Phần này sẽ thảo luận về chuỗi thoát sử dụng dấu ngoặc kép và dấu nháy đơn trong PHP. Các trình tự thoát có thể được sử dụng bên trong dấu ngoặc kép để thoát các ký tự. Trong khi đó, hầu hết các chuỗi thoát không được diễn giải trong một trích dẫn. Tuy nhiên, có một ngoại lệ để thoát khỏi dấu nháy đơn
Không cần thoát khỏi dấu nháy đơn nếu chúng ta viết dấu nháy đơn trong chuỗi khi sử dụng dấu nháy kép. Tuy nhiên, trong trường hợp trích dẫn đơn lẻ, chúng ta cần thoát nó bằng cách sử dụng
5. Ví dụ được hiển thị dưới đâyMã ví dụ
đầu ra
$count = 1; echo "The count is $count"; //Output: The count is 13
Trong đoạn mã trên, rõ ràng là dấu nháy đơn không được thoát bằng cách sử dụng dấu ngoặc kép. Dấu ngoặc kép cũng được thoát bên trong dấu ngoặc kép bằng ký tự thoát. Trong khi đó, trong trường hợp trích dẫn đơn, dấu nháy đơn được thoát bằng ký tự thoát. Trong trường hợp sau, dấu ngoặc kép không thoát khi sử dụng ký tự thoát