iLeichun

当前位置: 首页 > PHP

echo和print的区别

分类:PHP   来源:网络   时间:2010-08-13 11:17:27

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    自定义分界符,结束时必须位于行首  

更多