PHP中echo和print的区别

yipeiwu_com6年前PHP代码库

一般来说,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判断数组元素中是否存在某个字符串的方法

方法一:采用in_array(value,array,type) type 可选。如果设置该参数为 true,则检查搜索的数据与数组的值的类型是否相同。 复制代码 代码如下:$arr...

在yii中新增一个用户验证的方法详解

1.为什么要新增一个用户验证:因为我要将网站后台和前台做在同一个yii的应用中.但是前台也包含有会员的管理中心.而这两个用户验证是完全不同的,所以需要两个不同登陆页面,要将用户信息保存在...

PHP+JS实现大规模数据提交的方法

本文实例讲述了PHP+JS实现大规模数据提交的方法。分享给大家供大家参考。具体实现方法如下: <?php session_start(); ?> <...

PHP调用Linux命令权限不足问题解决方法

业务背景:  yourcmd为我的linux程序,它对权限要求非常严格,当用php去执行yourcmd程序 系统:CentOS 6.3 apache是php的执行用户 用exe...

PHP过滤★等特殊符号的正则

复制代码 代码如下: if(preg_match("/[ '.,:;*?~`!@#$%^&+=)(<>{}]|\]|\[|\/|\\\|\"|\|/",$user)){ ec...