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 相关文章推荐
mysql_fetch_row,mysql_fetch_array,mysql_fetch_assoc的区别
Apr 24 PHP
用Json实现PHP与JavaScript间数据交换的方法详解
Jun 20 PHP
解析curl提交GET,POST,Cookie的简单方法
Jun 29 PHP
利用phpexcel把excel导入数据库和数据库导出excel实现
Jan 09 PHP
PHP中echo,print_r与var_dump区别分析
Sep 29 PHP
3款值得推荐的微信开发开源框架
Oct 28 PHP
PHP实现算式验证码和汉字验证码实例
Mar 09 PHP
如何通过Linux命令行使用和运行PHP脚本
Jul 29 PHP
PHP异常处理Exception类
Dec 11 PHP
php简单的上传类分享
May 15 PHP
php图像处理函数imagecopyresampled用法详解
Dec 02 PHP
PHP安装扩展mcrypt以及相关依赖项深入讲解
Mar 04 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
浅谈Windows下 PHP4.0与oracle 8的连接设置
2006/10/09 PHP
用sql命令修改数据表中的一个字段为非空(not null)的语句
2010/06/04 PHP
PHP二维数组的去重问题解析
2011/07/17 PHP
php阻止页面后退的方法分享
2014/02/17 PHP
YII视图整合kindeditor扩展的方法
2016/07/13 PHP
图片完美缩放
2006/09/07 Javascript
JS 无限级 Select效果实现代码(json格式)
2011/08/30 Javascript
jQuery绑定事件监听bind和移除事件监听unbind用法实例详解
2016/01/19 Javascript
jQuery中的Deferred和promise 的区别
2016/04/03 Javascript
Bootstrap中的表单验证插件bootstrapValidator使用方法整理(推荐)
2016/06/21 Javascript
jquery实现文本框的禁用和启用
2016/12/07 Javascript
JavaScript运动框架 解决速度正负取整问题(一)
2017/05/17 Javascript
JS简单实现点击跳转登陆邮箱功能的方法
2017/10/31 Javascript
Vue2.0 http请求以及loading展示实例
2018/03/06 Javascript
vue中手机号,邮箱正则验证以及60s发送验证码的实例
2018/03/16 Javascript
JS中用EL表达式获取上下文参数值的方法
2018/03/28 Javascript
vue2.0 移动端实现下拉刷新和上拉加载更多的示例
2018/04/23 Javascript
vue中,在本地缓存中读写数据的方法
2018/09/21 Javascript
如何在Vue中使用CleaveJS格式化你的输入内容
2018/12/14 Javascript
基于webpack4.X从零搭建React脚手架的方法步骤
2018/12/23 Javascript
JS添加或删除HTML dom元素的方法实例分析
2019/03/05 Javascript
vue+vant-UI框架实现购物车的复选框全选和反选功能
2019/11/05 Javascript
微信小程序仿抖音视频之整屏上下切换功能的实现代码
2020/05/24 Javascript
[01:05:24]Ti4 冒泡赛第二天 iG vs NEWBEE 3
2014/07/15 DOTA
python基于Tkinter库实现简单文本编辑器实例
2015/05/05 Python
Python中几种导入模块的方式总结
2017/04/27 Python
django基础学习之send_mail功能
2019/08/07 Python
OpenCV+face++实现实时人脸识别解锁功能
2019/08/28 Python
利用Python的turtle库绘制玫瑰教程
2019/11/23 Python
python 抓取知乎指定回答下视频的方法
2020/07/09 Python
Street One瑞士:德国现代时装公司
2019/10/09 全球购物
重阳节演讲稿:尊敬帮助老人 弘扬传统美德
2014/09/25 职场文书
幼儿园门卫安全责任书
2015/05/08 职场文书
党员证明信
2015/06/19 职场文书
《确定位置》教学反思
2016/02/18 职场文书
HTML5之高度塌陷问题的解决
2022/06/01 HTML / CSS