关于PHP的echo和print
关于PHP echo和print的区别
PHP中有两个非常相似的输出功能,即echo和print。
这次我查了一下这两个功能的区别。
不是一个函数
echo和print在PHP中被解释为语言结构,而不是函数,因此可以不加括号正常工作。
<?php
print("Hello world\n");
print "Hello world\n";
echo("Hello world\n");
echo "Hello world\n";
?>
输出结果 (shū chū jié guǒ)
Hello world
Hello world
Hello world
Hello world
在动作上的区别是,echo()可以用逗号「,」分隔指定多个参数,而print()则否。
※然而,请注意在echo语句中加上()会导致错误。
<?php
print 'Hello', 'world'; // この構文はエラーが出ます
echo 'Hello', 'world'; // こっちは正しい構文です
?>
print是一个表达式,echo不是一个表达式。
例如,虽然无法在if语句中对echo进行评估,但可以对print进行评估。
由于print始终返回1,因此可以使用以下方式来表达。
<?php
//正常に評価する
if (print 1) {
print 'success';
}
?>
处理结果
1success
如果使用echo进行如上所述的写法将会导致错误。
应该使用哪个?
总的来说,两种方法都可以。据说由于没有返回值,echo 的处理速度更快,但个人感觉差异不大。