PHP中echo和print的区别


Posted in PHP onAugust 28, 2014

一般来说,PHP中动态输出HTML内容,是通过print 和 echo 语句来实现的,在实际使用中, print 和 echo 两者的功能几乎是完全一样。可以这么说,凡是有一个可以使用的地方,另一个也可以使用。但是,两者之间也还是一个非常重要的区别:在 echo 函数中,可以同时输出多个字符串,而在 print 函数中则只可以同时输出一个字符串。同时,echo函数并不需要圆括号,所以echo函数更像是语句而不像是函数。
echo 和 print 都不是函数,而是语言结构,所以圆括号都不是必需的。
 
他们的区别在于:

(1) echo可以输出多个字符串,像下面这样:

echo 'a','b','c';

如果你非要加上圆括号,注意写成echo ('a','b','c');是错误的,应该写成:

echo ('a'),('b'),('c');

它没有像函数的行为,所以不能用于函数的上下文
(2) print只能输出一个字符串,它可以表现得像一个函数,比如你可以如下使用:

$ret = print 'Hello World';

所有它能用在更复杂的表达式中。
另外,echo的效率相对比较快

看看如下代码:

<?php
$a='hello ';$b='php world!';echo $a,$b.'<br />';//echo 可以用逗号分隔字符串变量来显示
print $a.$b.'<br />';//而print不能使用逗号,只能用点号分隔,
//print $a,$b.'<br />';//这里使用逗号时报错。
?>

分析总结:

echo    命令和print命令相同,没有区别 
echo    函数和print函数有区别。 
echo()    无返回值,与echo命令相同 
print()    有返回值,成功,返1,false,返0.   
printf()    和sprintf()类似,均为格式化输出,不同的是前者输出到标准输出,后者输出到变量 

形如:

echo  <<< EOT 
EOT; 
print  <<< EOT 
EOT;

的书写格式,其含义如下:

<<<    运算符,将由自定义分界符间的内容视为字符串,可对其间的变量做处理 
EOT    自定义分界符,结束时必须位于行首

相信本文所述对大家更好的掌握PHP程序设计有一定的借鉴价值。

PHP 相关文章推荐
GD输出汉字的函数的分析
Oct 09 PHP
让PHP COOKIE立即生效,不用刷新就可以使用
Mar 09 PHP
使用php检测用户当前使用的浏览器是否为IE浏览器
Dec 03 PHP
windows服务器中检测PHP SSL是否开启以及开启SSL的方法
Apr 25 PHP
微信公众平台天气预报功能开发
Jul 06 PHP
Java和PHP在Web开发方面对比分析
Mar 01 PHP
CI框架简单邮件发送类实例
May 18 PHP
功能强大的php文件上传类
Aug 29 PHP
PHP常用函数总结(180多个)
Dec 25 PHP
PHP针对伪静态的注入总结【附asp与Python相关代码】
Aug 01 PHP
php+Ajax无刷新验证用户名操作实例详解
Mar 04 PHP
PHP正则表达式之RCEService回溯
Apr 11 PHP
什么情况下可以不写PHP的闭合标签“?&gt;”
Aug 28 #PHP
PHP防盗链代码实例
Aug 27 #PHP
如何让搜索引擎抓取AJAX内容解决方案
Aug 25 #PHP
使用php方法curl抓取AJAX异步内容思路分析及代码分享
Aug 25 #PHP
简单分析ucenter 会员同步登录通信原理
Aug 25 #PHP
ThinkPHP调用common/common.php函数提示错误function undefined的解决方法
Aug 25 #PHP
ThinkPHP查询返回简单字段数组的方法
Aug 25 #PHP
You might like
Zend Framework教程之Zend_Layout布局助手详解
2016/03/04 PHP
Javascript技术技巧大全(五)
2007/01/22 Javascript
javascript 特殊字符串
2009/02/25 Javascript
jQuery Deferred和Promise创建响应式应用程序详细介绍
2013/03/05 Javascript
一个简单的JS鼠标悬停特效具体方法
2013/06/17 Javascript
angular中使用路由和$location切换视图
2015/01/23 Javascript
判断数组的最佳方法(推荐)
2016/10/11 Javascript
jQuery 获取select选中值及清除选中状态
2016/12/13 Javascript
EL表达式截取字符串的函数说明
2017/09/22 Javascript
nodejs结合socket.io实现websocket通信功能的方法
2018/01/12 NodeJs
jQuery niceScroll滚动条错位问题的解决方法
2018/02/03 jQuery
vue中动态绑定表单元素的属性方法
2018/02/23 Javascript
vue中添加mp3音频文件的方法
2018/03/02 Javascript
5分钟学会Vue动画效果(小结)
2018/07/21 Javascript
浅谈JavaScript闭包
2019/04/09 Javascript
微信公众号获取用户地理位置并列出附近的门店的示例代码
2019/07/25 Javascript
[01:35]2014DOTA2西雅图邀请赛 专访狐狸妈青春献给刀塔
2014/07/08 DOTA
Python设计模式之工厂模式简单示例
2018/01/09 Python
快速解决PyCharm无法引用matplotlib的问题
2018/05/24 Python
详解Python中的正则表达式
2018/07/08 Python
对pandas中两种数据类型Series和DataFrame的区别详解
2018/11/12 Python
python实现在函数图像上添加文字和标注的方法
2019/07/08 Python
pip指定python位置安装软件包的方法
2019/07/12 Python
python爬虫豆瓣网的模拟登录实现
2019/08/21 Python
python 正则表达式贪婪模式与非贪婪模式原理、用法实例分析
2019/10/14 Python
基于python实现把图片转换成素描
2019/11/13 Python
Java中会存在内存泄漏吗,请简单描述
2016/12/22 面试题
摄影实习自我鉴定
2013/09/20 职场文书
校长就职演讲稿
2014/01/06 职场文书
工商管理专业大学生职业生涯规划范文
2014/03/09 职场文书
委托书的写法
2014/08/30 职场文书
六查六看个人剖析材料
2014/10/14 职场文书
2014年材料员工作总结
2014/11/19 职场文书
Python中for后接else的语法使用
2021/05/18 Python
html5 录制mp3音频支持采样率和比特率设置
2021/07/15 Javascript
vue使用watch监听属性变化
2022/04/30 Vue.js