HereDoc与NowDoc

      PHP的HereDoc以Linux系统的“原型文档”(here-document)语法为基础,它允许开发者在脚本中嵌入一段文本内容,如邮件模板,短信模板,HTML/JavaScript脚本等。

      它是一种面向字符行的引用,所以定界符是针对行,而不是字符。起始定界符是当前行,结束定界符是一个指定字符的行。例如:    


<?php
    echo <<<HereDoc        HELLO WORLD! <br />     
        this is heredoc. 
HereDoc;
?>

<<<HereDoc表示开头,以HereDoc结束,表示引用结束。这里<<<后面的HereDoc可以是任何字符,注意结束符之前的文字要与上边文字段落自然换行不要有空格或TAB字符进行缩进操作,否则PHP会提示解析错误。以上代码显示结果:

      

     在HereDoc中可以直接引用PHP变量(该变量已定义),HereDoc会解析该变量,直接显示变量的值,为避免与其他文字混淆,可以用花括号将该变量括起来。代码如下:


<?php        
    $name = 'weihui'    echo <<<HereDoc
        HELLO WORLD! <br />     
        this is {$name} heredoc. 
HereDoc;
?>

显示结果:

      如果想在HereDoc内容中显示$打头的字符串,PHP会认为是一个变量,需要进行转义操作。

  NowDoc源于HereDoc,语法和HereDoc相似,唯一区别是它使用单引号作为定界符。如代码所示:

 
<?php             $name = 'zwh123';    echo <<<'NowDoc_test'        HELLO WORLD! <br />     
        this is {$name} nowdoc. NowDoc_test;
?>

显示结果:


      NowDoc对包含的文本均不做任何解析。在输出时,无论有没有PHP变量,还是特殊字符串,里面的内容都当做纯文本。这非常适合含有代码的内容,比如想在脚本中显示一段PHP源码,动态SQL语句等具有很实用的价值。 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值