Heredoc技术,在正规的PHP文档中和技术书籍中一般没有详细讲述,只是提到了这是一种Perl风格的字符串输出技术。但是现在的一些论坛程序,和部分文章系统,都巧妙的使用heredoc技术,来部分的实现了界面与代码的准分离,phpwind模板就是一个典型的例子。

如下:

<?php$name = '浅水游';print <<<EOT<html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>Untitled Document</title></head><body><!--12321-->Hello,$name!</body></html>EOT;
?>

注意:

1.以<<<End开始标记开始,以End结束标记结束,结束标记必须顶头写,不能有缩进和空格,且在结束标记末尾要有分号 。

2.开始标记和开始标记相同,比如常用大写的EOT、EOD、EOF来表示,但是不只限于那几个,只要保证开始标记和结束标记不在正文中出现即可

3.位于开始标记和结束标记之间的变量可以被正常解析,但是函数则不可以。在heredoc中,变量不需要用连接符.或,来拼接,如下:

$v=2;
$a= <<<EOF
"abc"$v
"123"
EOF;
echo $a; //结果连同双引号一起输出:"abc"2 "123"

4.heredoc常用在输出包含大量HTML语法d文档的时候。比如:函数outputhtml()要输出HTML的主页。可以有两种写法。很明显第二种写法比较简单和易于阅读。
第一种:

function outputhtml(){echo "<html>";echo "<head><title>主页</title></head>";echo "<body>主页内容</body>";echo "</html>;
}

第二种:

function outputhtml()
{echo <<<EOT<html><head><title>主页</title></head><body>主页内容</body></html>EOT;
}
outputhtml();

转载于:https://www.cnblogs.com/webzhuo/p/4254949.html

(转)PHP EOF(heredoc)的使用方法相关推荐

  1. PHP EOF(heredoc)的使用方法

    链接: http://www.cnblogs.com/zcy_soft/archive/2011/06/30/2094058.html#undefined Heredoc技术,在正规的PHP文档中和技 ...

  2. Eclipse CDT中EOF输入的解决方法

    在Xcode中可以用control+D来输入EOF,但是在Eclipse CDT中却老是死机没反应. 解决方法如下: 1.Preference->General->Keys,找到EOF快捷 ...

  3. php中heredoc的使用方法

    2019独角兽企业重金招聘Python工程师标准>>> Heredoc技术,在正规的PHP文档中和技术书籍中一般没有详细讲述,只是提到了这是一种Perl风格的字符串输出技术.但是现在 ...

  4. SyntaxError: unexpected EOF while parsing解决方法

    SyntaxError: unexpected EOF while parsing 意思是:语法错误:分析时出现意外的EOF(循环结束不了) 我遇到的问题是:在读取文件中的str类型时,将其通过eva ...

  5. PHP EOF使用说明

    下面来介绍一下如何使用EOF,具体如下: PHP EOF(heredoc)是一种在命令行shell(如sh.csh.ksh.bash.PowerShell和zsh)和程序语言(像Perl.PHP.Py ...

  6. php eof 使用函数_PHP中EOF的用法介绍(附示例)

    本篇文章给大家带来的内容是关于PHP中EOF的用法介绍(附示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. PHP EOF(heredoc)是一种在命令行shell(如sh.cs ...

  7. php eof 插入变量,php eof的用法

    php eof的用法:首先创建一个PHP示例文件:然后通过"echo <<-EOF;"语法定义一个字符串即可. 本文操作环境:windows7系统.PHP7.1版,DE ...

  8. C语言清空输入缓冲区的N种方法对比

    C语言中有几个基本输入函数: //获取字符系列 int fgetc(FILE *stream); int getc(FILE *stream); int getchar(void); //获取行系列 ...

  9. C语言清空输入缓冲区的N种方法对比(转)

    C语言中有几个基本输入函数: //获取字符系列int fgetc(FILE *stream);int getc(FILE *stream);int getchar(void);//获取行系列char ...

最新文章

  1. 计算机小知识应用,计算机应用知识(要熟悉电脑的运用,这十个小知识你不能不懂!)...
  2. Java字符编码的转化问题
  3. 关于浏览器跨域请求的相关原理实现--很经典的博客
  4. 怪事,硬盘上的FC3_cd1的ISO莫名其妙被改变了
  5. php时分获取秒数,javascript与php时/分/秒与秒数互转
  6. 2.3.3单链表的双向链表
  7. 使用Eclipse的Working Set管理项目
  8. Linux快速查找库文件位置
  9. R语言领跑 大数据岗位霸占IT薪酬榜单
  10. NGN学习笔记8——NGN的安全问题
  11. 易语言服务器卡密验证,想写一个关于辅助登录卡密的软件。 问题:易语言如何会做一个输入正确卡密才可以登入界面的...
  12. 三种摘要算法的简单介绍
  13. java怎么画竖线_画竖线的4种方法
  14. VMware虚拟机三种网络连接模式详解
  15. ajax打开新窗口被浏览器拦截的解决办法
  16. 如何优雅地使用 Sublime Text
  17. 喜讯 | 创新引领,数据赋能,数说故事再度斩获金鼠标数字营销大赛双项大奖
  18. win10下caffe环境搭建: win10 + vs2013 + caffe + CUDA 7.5 + cudnn v4 + Anaconda2 (python 2.7) 目前未使用GPU
  19. GBK,UTF8是什么?
  20. RTK+GPS提高定位精度原理解析

热门文章

  1. python播放本地视频教程_怎样用python播放视频
  2. spark并发读mysql_spark jdbc(mysql) 读取并发度优化
  3. java文件名要和什么一致,Java的类名与文件名必须一致
  4. debian10新建文档_Debian 10(Buster)安装过程图文详解
  5. vim代码格式化自动加空格_vim格式化代码实际上就是 缩进代码, 命令是等号=
  6. windows 远程访问别人的linux下的ftp服务器,linux与windows之间使用ftp相互访问(CentOS提示ftp:command not found)...
  7. java实现筛选_教你用Java web实现多条件过滤功能
  8. html带颜色表格怎么做,使用HTML添加表格4(行颜色与表格嵌套)——零基础自学网页制作...
  9. C++对象模型9——临时对象的生命周期、模板及实例化分析、内联函数
  10. C++知识点32——使用C++标准库(关联容器set和multiset的初始化,赋值,查找,添加,删除与迭代器失效)