echo 和 print 的区别
PHP中echo和print 的功能基本相同(输出 ),但是两者之间还是有细微差别的。
1、返回值
echo输出后没有返回值。
print有返回值,当其执行失败时返回flase。
因此print可以作为一个普通函数来使用,这意味着print可用在一些复杂的表达式中,而echo则不行。但是,因为echo语句不要求返回任何数值,所已在代码中echo语句的运行效率要略微快于print语句。
2、输出字符串
echo 可以同时输出多个字符串。
echo $test1 . 'and' .$test2;
print()只能输出一个字符串。需要括号括起。print()用法会对输出内容的%做特殊处理。
print()和print没有太大区别一个是函数,一个是命令。
print($test);
print可以输出大段的HTML,而且不用把里面的引号转义。
<? print <<<dND <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>无标题文档</title> </head> <body> </body> </html> dND ?>
print只有一个参数,print有:ture,1;false,0。
3、区别细节:
echo命令和print命令相同,没有区别 ;
echo函数和print
函数有区别;
print()有返回值,当其执行失败(比如断线)时返回flase;
printf()和sprintf()类似,均为格式化输出,不同的是前者输出到标准输出,后者输出到变量。
在同一页面中使用<<<标记,标记名为配对出现,同一页面中不允许同名出现两个以上标记名。配对标记名的结尾标记名应单独一行,前后均不允许输出字符(例如空格等不可见但存在的字符)。
例如下面的书写格式:
echo <<< EOT
EOT;
print <<< EOT
EOT;
其含义如下:
<<<:运算符,将由自定义分界符间的内容视为字符串,可对其间的变量做处理;EOT:自定义分界符,结束时必须位于行首。
另:sprintf()函数的功能与printf()相同,但它将输出指派到字符串,而不是直接指派到浏览器。其形式如下:
string sprintf(string format [, mixed arguments])
示例如下:
$cost = sprintf("$%.2f", 43.2);// cost = $43.20