PHP中heredoc和nowdoc的用法

PHP中heredoc和nowdoc的用法

大家好,又见面了,我是全栈君。

我先定义一个三行三列的表格:

$table="<table border='1' width=\"80%\">//使用转义符
<tr>
   <td>编号</td>
   <td>用户名</td>
   <td>描述</td>
</tr>
<tr>
    <td>1</td>
    <td>tang</td>
    <td>she said \"I'm  a girl\"</td>//因为在php文文件中,出现了单双引号冲突,所以这里用了转义符。
</tr>

</table>";
echo $table;

输出结果: 输入图片说明

我们发现当在php文件中同时使用单引号和双引号就会出现冲突我们要用到转义符。

  • heredoc语法结构

<<<标识名称 内容 标识名称;

注意:

  1. 标识名只能包含字母、数字、下划线,并且必须字母和下划线开始
  2. 结束符前不能有任何内容,像制表符和空格都不可以
  3. PHP5.3之后可以将标识符用双引号括起来,其他和双引号作用一样
$table=<<<EOF
<table border='1' width=80%>
<tr>
     <td>编号</td>
     <td>用户名</td>
     <td>描述</td>
</tr>
<tr>
    <td>1</td>
    <td>tang</td>
    <td>she said "I'm  a girl"</td>
</tr>
</table>
EOF;
echo $table;

输出结果: 输入图片说明

用了heredoc语法结构实现了同样的效果,但是我们并没有用转义符。 所以heredoc就相当于双引号的作用,也具有解析变量的能力。

  • nowdoc语法结构

<<<‘标识名称’ 内容 标识名称;

注意:

  • nowdoc和单引号作用一样,不解析变量和转义符,标识名称需要放在单引号中
$username='tang';
$str=<<<'EOD'
hello king<br/>
{$username}
EOD;
echo $str

输出结果:

输入图片说明

转载于:https://my.oschina.net/u/2953372/blog/806355

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/108723.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • Java程序设计(高级及专题)- GUI「建议收藏」

    Java程序设计(高级及专题)- GUI「建议收藏」Java程序设计(高级及专题)- GUI

  • 2021年程序员平均工资_中国程序员数量

    2021年程序员平均工资_中国程序员数量前言两会期间,包括腾讯董事会主席兼首席执行官马化腾,百度董事长兼CEO李彦宏,小米创始人兼CEO雷军等一众互联网科技大佬提出了一系列的提案,围绕数字经济,自动驾驶,网络安全,智能制造等细分领域,仿佛手握未来一年的数字化密码,为我们开启新世界的大门。他们是新世界的指向灯,在他们背后则是无数的新世界探索者,通过指尖代码为未来铺路的程序员们,一直以来,作为备受人们关注的群体,互联网的飞速发展时期离不开他们。为了更好地顺应时代发展形式,运用技术改善生活,程序员客栈对中国程序员薪资和生活现状做了一些

    2022年10月10日
  • 两位数乘法速算(无意中发现)

    两位数乘法速算(无意中发现)比如目前计算12*34=?现在拿ab*cd=?举例子步骤:就是b*d的个位数放在?的个位上。。。。。。。。。。。。。。。。。①然后如果bd有十位那么先记下来(心里默记)。。。。。。。。。。。②然后计算bc+a*d+②结果得到的个位数写在①前面。。。。。。。。③然后把上一步剩下的结果除了个位数以后的保留下来。。。。。。。。。④然后…

  • 范围管理论文_论管理的职能论文

    范围管理论文_论管理的职能论文摘要:  2015年1月,本人参与了xx省图书馆RFID(无线射频识别技术)信息管理系统的项目建设,担任项目经理一职。该项目投资860万元人民币,建设工期为1年,系统通过无线射频识别技术,极大地提高图书馆的工作效率,全面提高了图书馆的服务质量和整体形象。本系统内容主要包括:图书管理子系统、图书自助借还子系统、RFID信息管理子系统等,是一个大项目。该项目作为省内建设重点工程之一,受到省市及有

  • flutter 自定义播放器进度条

    flutter 自定义播放器进度条FijkPlayer第三方的一个视频播放器,这是一个大佬基于比利比利播放器封装的,有常用的API可自定义样式pub传送门默认的样式展示:自定义的样式展示:**使用:**fijkplayer:^0.8.4///声明一个FijkPlayerfinalFijkPlayerplayer=FijkPlayer();@overridevoidinitState(){///指定视频地址player.setDataSource(“ht…

  • UML一一 类图关系 (泛化、实现、依赖、关联、聚合、组合)[通俗易懂]

    UML一一 类图关系 (泛化、实现、依赖、关联、聚合、组合)[通俗易懂]目录类图关系概述面向对象是符合人们对现实世界的思维模式,利用面向对象设计,特别是采用各种设计模式来解决问题时,会设计多个类,然后创建多个对象,一个设计良好的类,应该是兼顾信息和行为并且高内聚。而不同的类之间,应该做到松耦合。当面对应用系统或者需要解决的问题经常是复杂的、高度抽象的,我们创建的多个对象往往是有联系的,通常对象之间的关系可以分为以下几类:泛化关系实现关系依赖关…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号