Định nghĩa và sử dụng
Trong PHP, kiểu dữ liệu string là chuỗi ký tự không phải số. Bất kỳ ký tự ASCII nào có thể nằm trong string. PHP không hỗ trợ UNICODE.
Biểu diễn literal string trong PHP: dấu nháy đơn, dấu nháy kép, cú pháp heredoc và nowdoc.
Cú pháp
// Gán literal string cho biến $var = 'Hello World'; // Dấu nháy đơn $var3 = "Hello World"; // Dấu nháy kép
Nhúng ký tự nháy đơn trong chuỗi nháy đơn thêm dấu \ trước. Tương tự nhúng backslash thêm backslash nữa. Các chuỗi escape như \n không có ý nghĩa đặc biệt.
Chuỗi nháy kép xử lý các escape sequence sau với ý nghĩa đặc biệt:
| Sequence | Ý nghĩa |
|---|---|
| \n | xuống dòng (linefeed) |
| \r | return đầu dòng (carriage return) |
| \t | tab ngang |
| \v | tab dọc (từ PHP 5.2.5) |
| \e | escape (từ PHP 5.4.4) |
| \f | form feed (từ PHP 5.2.5) |
| \\ | backslash |
| \$ | dấu dollar |
| \" | dấu nháy kép |
Chuỗi Heredoc bắt đầu bằng <<< theo sau bởi identifier tùy chọn. Từ dòng tiếp theo, chuỗi nhiều dòng bất kỳ có thể chứa escape sequence trên. Dòng cuối phải có cùng identifier heredoc kết thúc bằng dấu chấm phẩy.
// Heredoc gán string cho biến public $var = <<< XYZ Hello World Welcome to Tutorialspoint XYZ;
Chuỗi Nowdoc tương tự heredoc. Khác biệt: identifier phải trong nháy đơn và escape sequence trong nowdoc không parse, hiển thị nguyên văn.
// Nowdoc gán string cho biến public $var = <<< 'XYZ' Hello World Welcome to Tutorialspoint XYZ;
Phiên bản PHP
Dùng dấu phân cách "_" khả dụng từ PHP 7.4.0.
Ví dụ chuỗi nháy đơn. Escape \n không parse, hiển thị nguyên văn:
Ví dụ
<?php $var = 'Hello World.\n Welcome to Tutorialspoint'; echo $var; ?>
Kết quả
Hello World.\n Welcome to Tutorialspoint
Ví dụ chuỗi nháy kép. Escape \n parse, hiển thị 2 dòng:
Ví dụ
<?php $var = "Hello World.\n Welcome to Tutorialspoint"; echo $var; ?>
Kết quả
Hello World. Welcome to Tutorialspoint
Ví dụ dùng Heredoc và Nowdoc:
Ví dụ
<?php // Heredoc $var = <<< STR Hello World Welcome to Tutorialspoint STR; echo $var . "\n"; // Nowdoc $var = <<< 'STR' Hello World Welcome to Tutorialspoint STR; echo $var; ?>
Kết quả
Hello World Welcome to Tutorialspoint Hello World Welcome to Tutorialspoint
Ví dụ thay thế giá trị biến trong heredoc. Nowdoc không thay thế:
Ví dụ
<?php $name = "Mahesh"; $var = <<< STR Hello $name Welcome to Tutorialspoint STR; echo $var . "\n"; // Nowdoc $var = <<< 'STR' Hello $name Welcome to Tutorialspoint STR; echo $var; ?>
Kết quả
Hello Mahesh Welcome to Tutorialspoint Hello $name Welcome to Tutorialspoint