一般来说, 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.'
- ';//echo 可以用逗号分隔字符串变量来显示
- print $a.$b.'
- ';// 而 print 不能使用逗号, 只能用点号分隔,
- //print $a,$b.'
- ';// 这里使用逗号时报错
- ?>
分析总结:
echo 命令和 print 命令相同, 没有区别
echo 函数和 print 函数有区别
echo() 无返回值, 与 echo 命令相同
print() 有返回值, 成功, 返 1,false, 返 0.
printf() 和 sprintf() 类似, 均为格式化输出, 不同的是前者输出到标准输出, 后者输出到变量
形如:
- echo <<< EOT
- EOT;
- print <<< EOT
- EOT;
的书写格式, 其含义如下:
<<< 运算符, 将由自定义分界符间的内容视为字符串, 可对其间的变量做处理
EOT 自定义分界符, 结束时必须位于行首
相信本文所述对大家更好的掌握 PHP 程序设计有一定的借鉴价值
来源: https://www.php1.cn/detail/php-8517763b27.html