PHP 字符串数据类型
phpserver side programmingprogramming更新于 2025/8/19 8:37:17
定义和用法
在 PHP 中,字符串 数据类型是非数字字符序列。ASCII 码中的任何字符都可以作为字符串的一部分。PHP 不支持 UNICODE。
在 PHP 中,字符串的字面表示可以使用单引号、双引号、hererdoc 语法和 nowdoc 语法。
语法
//将字符串值直接赋值给变量 $var='Hello World'; //单引号 $var3="Hello World"; //双引号
要在单引号字符串中嵌入单引号字符,请在其前面加上 '\'。类似地,要在单引号字符串中嵌入反斜杠,请在其前面加上额外的反斜杠。其他转义序列字符(例如
等)不带有任何特殊表示。
双引号字符串将以下转义序列及其特殊含义视为:
| 序列 | 含义 |
|---|---|
| 换行符 | |
| \r | 回车符 |
| \t | 水平制表符 |
| \v | 垂直制表符 (自 PHP 5.2.5 起) |
| \e | 转义符 (自 PHP 5.4.4 起) |
| \f | 换页符 (自 PHP 5.2.5 起) |
| \ | 反斜杠 |
| \$ | 美元符号 |
| \" | 双引号 |
Heredoc 字符串以 <<< 符号开头,后跟用户选择的任意标识符。下一行开始,是任意多行字符序列,这些字符可能包含上述任何转义序列。最后一行应具有相同的 Heredoc 标识符,并以分号结尾。
//Heredoc 将字符串值赋值给变量 public $var = <<< XYZ Hello World Welcome to Tutorialspoint XYZ;
Nowdoc 字符串与 Heredoc 字符串类似。区别在于,标识符必须用单引号括起来,并且 Nowdoc 字符串中的转义序列不会被解析,而是按原样显示。
//Nowdoc 将字符串值赋值给变量 public $var = <<< 'XYZ' Hello World Welcome to Tutorialspoint XYZ;
PHP 版本
自 PHP 7.40 起,可以使用分隔符号"_"
以下示例显示了单引号字符串。转义序列
未被解析,因此按原样显示
示例
<?php $var = 'Hello World.
Welcome to Tutorialspoint'; echo $var; ?>
输出
这将产生以下结果 −
Hello World.
Welcome to Tutorialspoint
此示例使用双引号括起字符串。转义序列
被解析,文本显示为两行
示例
<?php $var = "Hello World.
Welcome to Tutorialspoint"; echo $var; ?>
输出
这将产生以下结果 −
Hello World. Welcome to Tutorialspoint
此示例展示如何使用 Heredoc 和 Nowdoc 语法来表示字符串
示例
<?php //Heredoc $var = <<< STR Hello World Welcome to Tutorialspoint STR; echo $var . "
"; //Nowdoc $var = <<< 'STR' Hello World Welcome to Tutorialspoint STR; echo $var; ?>
输出
这将产生以下结果 −
Hello World Welcome to Tutorialspoint Hello World Welcome to Tutorialspoint
此示例显示变量的值在 heredoc 字符串中被替换。Nowdoc 字符串不进行替换
示例
<?php $name = "Mahesh"; $var = <<< STR Hello $name Welcome to Tutorialspoint STR; echo $var . "
"; //Nowdoc $var = <<<'STR' Hello $name Welcome to Tutorialspoint STR; echo $var; ?>
输出
这将产生以下结果 −
Hello Mahesh Welcome to Tutorialspoint Hello $name Welcome to Tutorialspoint

