php字符串的表示方法有哪些

青灯夜游
发布: 2021-07-08 16:05:16
原创
3715人浏览过
表示方法有:1、用单引号把字符包围起来,语法“'字符'”;2、用双引号把字符包围起来,语法“"字符"”;3、 heredoc语法结构,语法“<<<EOS 字符 EOS”;4、nowdoc语法结构,语法“<<<'EOS' 字符 EOS”。

php字符串的表示方法有哪些

本教程操作环境:windows7系统、PHP8.1版,DELL G3电脑

在PHP中有四种方式可以表示字符串,分别是单引号、双引号、heredoc语法结构、nowdoc语法结构。

单引号

定义字符串的最简单的方法,用单引号把字符包围起来。使用单引号时,如果要表达单引号或者反斜杠需要使用反斜杠“”进行转义。单引号中只对这两个字符进行转义。在单引号中的变量和特殊字符的转义序列不会被替换。单引号中的字符可以是多行的。

<?php
$name = 'php';
@header("Content-type: text/html; charset=utf-8"); 
echo '最简单的字符串表达形式'."
";
 
echo '可以是
多行的'."
";
 
echo '单引号"'"和反斜杠"\"需要使用""转义'."
";
 
echo '"\"与""是一样的'."
";
 
echo '其他特殊字符如
、
和变量$name是不会转换的'."
";
?>
登录后复制

双引号

如果字符被双引号包围,PHP将对其中的一些特殊字符进行解析,双引号可解析的特殊字符如下,双引号字符串最重要的特性是变量解析。

         :换行(ASCII 字符集中的 LF 或 0x0A (10))
         ;回车(ASCII 字符集中的 CR 或 0x0D (13))
         ;水平制表符(ASCII 字符集中的 HT 或 0x09 (9))
         ;垂直制表符(ASCII 字符集中的 VT 或 0x0B (11))(自 PHP 5.2.5 起)
        e;Escape(ASCII 字符集中的 ESC 或 0x1B (27))(自 PHP 5.4.0 起)
         ;换页(ASCII 字符集中的 FF 或 0x0C (12))(自 PHP 5.2.5 起)
        \;反斜线
        $;美元标记
        ";双引号
        [0-7]{1,3};符合该正则表达式序列的是一个以八进制方式来表达的字符
        x[0-9A-Fa-f]{1,2};符合该正则表达式序列的是一个以十六进制方式来表达的字符

立即学习PHP免费学习笔记(深入)”;

<?php
$name = 'php';
@header("Content-type: text/html; charset=utf-8"); 
 
echo "双引号中单引号'不需要转义反斜杠也不需要转义双引号"需要转义
";
 
echo "双引号也可以是
		多行的
";
 
echo ""\\"与"\"是一样的,但是如果想要表示两个反斜杠则需要使用四个反斜杠
";
 
echo "还可以转义其他一些特殊字符,如:\$转义为$,\x41转义为A
";
 
echo "还可以解析变量,如:\$name解析为$name
";
?>
登录后复制

heredoc语法结构

heredoc语法结构是使用zuojiankuohaophpcn<<加开始标记和结束标记。在<<<之后提供一个标识符(此标识符的命名需要遵循PHP标签的命名规则,即只能包含字母、数字以及下划线,并且不能以数字开头),然后换行,接下来是字符串本身, 最后用前面定义的标识符做为结束标记。

需要注意的是,开始标记后必须换行,结束标记所在行除了分号“;”外,不能有包含其他字符包括缩进,分号前后也不能有任何空白或制表符等。

法语写作助手
法语写作助手

法语助手旗下的AI智能写作平台,支持语法、拼写自动纠错,一键改写、润色你的法语作文。

法语写作助手 31
查看详情 法语写作助手

在heredoc结构中,单引号、双引号与回车符( )与单个反斜杠是不需要转义的,如果要表示多个反斜杠则需要进行转义,其他转义字符与双引号支持的转义字符相同。heredoc结构类似于双引号字符串。

heredoc结构可以用于变量初始化,也可以用在函数参数中传递数据。从PHP5.3起,如果heredoc中不包含变量,那么也可以用来初始化静态变量和类中的属性、常量。还可以通过双引号声明开始标识符。

<?php
@header("Content-type: text/html; charset=utf-8"); 
 
$name = 'php';
function foo(){
	static $str = <<<EOS



	

e


\
\\
$name
"
'
A
:
EOS;
echo $str;
}
foo();
 
/* 含有变量的更复杂示例 */
class foo
{
    
	const cons= <<<"EOD"
cons
EOD;
	var $test= <<<EOD
"test"
EOD;
	var $bar;
    function foo()
    {
        $this->bar = array('Bar1', 'Bar2', 'Bar3');
    }
}
 
$foo = new foo();
echo foo::cons."
";
echo <<<EOT
heredoc中支持更复杂的格式如:
$foo->test=> $foo->test.
{$foo->bar[1]}=>{$foo->bar[1]}.
EOT;
?>
登录后复制

nowdoc语法结构

nowdoc语法结构是PHP5.3引入的,与heredoc语法结构类似,使用<<<加开始标记和结束标记。但是在<<<后面的开始标识符必须用单引号包围起来,heredoc的所有规则同样适用于nowdoc结构,尤其是结束标识符的规则。

nowdoc结构类似于单引号字符串。nowdoc中不进行解析操作,适用于嵌入PHP代码或大段文本而无需对其中的特殊字符进行转义。与SGML中的<![CDATA[]]>结构声明大段的不用解析的文本类似。

<?php
@header("Content-type: text/html; charset=utf-8"); 
 
$name = 'php';
function foo(){
	static $str = <<<'EOS'
$name



	

e


\
\\
$name
"
'
A
:
EOS;
echo $str;
}
foo();
 
/* 含有变量的更复杂示例 */
class foo
{
    
	const cons= <<<'EOD'
cons
EOD;
	var $test= <<<'EOD'
"test"
EOD;
	var $bar;
    function foo()
    {
        $this->bar = array('Bar1', 'Bar2', 'Bar3');
    }
}
 
$foo = new foo();
echo foo::cons."
";
echo <<<'EOT'
nowdoc中不支持复杂的格式如:
$foo->test=> $foo->test.
{$foo->bar[1]}=>{$foo->bar[1]}.
EOT;
?>
登录后复制

推荐学习:《PHP视频教程

以上就是php字符串的表示方法有哪些的详细内容,更多请关注php中文网其它相关文章!

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号