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 相关文章推荐
强烈推荐:php.ini中文版(2)
Oct 09 PHP
用PHP将数据导入到Foxmail的实现代码
Sep 05 PHP
php在文件指定行中写入代码的方法
May 23 PHP
PHP_SELF,SCRIPT_NAME,REQUEST_URI区别
Dec 24 PHP
php格式化金额函数分享
Feb 02 PHP
php实现屏蔽掉黑帽SEO的搜索关键字
Apr 15 PHP
php生成验证码,缩略图及水印图的类分享
Apr 07 PHP
PHP基于双向链表与排序操作实现的会员排名功能示例
Dec 26 PHP
PHP中OpenSSL加密问题整理
Dec 14 PHP
PHP实现的大文件切割与合并功能示例
Apr 10 PHP
PHP面向对象程序设计继承用法简单示例
Dec 28 PHP
PHP项目多语言配置平台实现过程解析
May 18 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
Php 构造函数construct的前下划线是双的_
2009/12/08 PHP
PHP中time(),date(),mktime()区别介绍
2013/09/28 PHP
php的mkdir()函数创建文件夹比较安全的权限设置方法
2014/07/28 PHP
PDO::getAvailableDrivers讲解
2019/01/28 PHP
Laravel 模型关联基础教程详解
2019/09/17 PHP
使用js实现雪花飘落效果
2013/08/26 Javascript
鼠标悬浮显示二级菜单效果的jquery实现
2014/10/29 Javascript
在JavaScript中操作时间之getMonth()方法的使用
2015/06/10 Javascript
使用AngularJS中的SCE来防止XSS攻击的方法
2015/06/18 Javascript
ClearTimeout消除闪动实例代码
2016/02/29 Javascript
JavaScript中split与join函数的进阶使用技巧
2016/05/03 Javascript
jQuery中实现prop()函数控制多选框(全选,反选)
2016/08/19 Javascript
ReactNative之键盘Keyboard的弹出与消失示例
2017/07/11 Javascript
React组件refs的使用详解
2018/02/09 Javascript
JS实现图片旋转动画效果封装与使用示例
2018/07/09 Javascript
Angular Material Icon使用详解
2018/11/07 Javascript
通过cordova将vue项目打包为webapp的方法
2019/02/02 Javascript
Node.js事件的正确使用方法
2019/04/05 Javascript
[02:25]DOTA2英雄基础教程 熊战士
2014/01/03 DOTA
python获取标准北京时间的方法
2015/03/24 Python
利用Fn.py库在Python中进行函数式编程
2015/04/22 Python
实例解析Python设计模式编程之桥接模式的运用
2016/03/02 Python
Python编程对列表中字典元素进行排序的方法详解
2017/05/26 Python
python中不能连接超时的问题及解决方法
2018/06/10 Python
爬虫代理池Python3WebSpider源代码测试过程解析
2019/12/20 Python
为什么相对PHP黑python的更少
2020/06/21 Python
使用Nibabel库对nii格式图像的读写操作
2020/07/01 Python
Python 2.6.6升级到Python2.7.15的详细步骤
2020/12/14 Python
html5仿支付宝密码框的实现代码
2017/09/06 HTML / CSS
微软英国官方网站:Microsoft英国
2016/10/15 全球购物
世界上最大的冷却器制造商:Igloo Coolers
2019/07/23 全球购物
澳大利亚当地社区首选的光学商店:1001 Optical
2019/08/24 全球购物
培训楼经理岗位责任制
2014/02/10 职场文书
年终晚会主持词
2014/03/25 职场文书
职业规划实施方案
2014/06/10 职场文书
研究生个人学年总结
2015/02/14 职场文书