<?php header("content-type:text/html; charset=utf-8"); $temp1="测试字符"; echo <<<love <html> <head> <title>测试标题</title> </head> <body> 测试内容$temp1; </body> </html> love; echo "\n 直接输出HereDoc文档字符消耗内存:".$m1=memory_get_usage(); echo "<br/>"; $str1=<<<love2 <html> <head> <title>测试标题222222</title> </head> <body> 测试内容2222$temp1; </body> </html> love2; echo $str1; echo "\n 先声明变量后再输出HereDoc字符消耗内存:".$m2=memory_get_usage(); echo "<br/>"; echo "<html> <head> <title>测试标题3333</title> </head> <body> 测试内容333333$temp1 </body> </html> "; echo "\n 直接Echo输出消耗内存:".$m3=memory_get_usage(); echo "<br/>"; ?>
输出结果:
看不出有什么区别呀,hereDoc可以输出文档,echo也可以呢! 当然看内存消耗是hereDoc会小点,这就是区别么?
HereDoc可以直接输出变量,所以在输出大段文字的时候比较方便。
不过前后端分离之后,HereDoc用的越来越少了
当输出文本时HereDoc跟echo没什么区别, 区别在于HereDoc可以输出html代码。
hereDoc比excho消耗内存