【问题标题】:The echo and print statements in php [duplicate]php中的echo和print语句[重复]
【发布时间】:2024-10-07 22:30:01
【问题描述】:

可能重复:
What is basic difference echo Vs print

echo 和 print 语句几乎相同,但它们有一些区别。 例如 print 语句如果成功则返回值 1 如果不成功,则值为 0,而 echo 语句成功 不返回值。

为什么 print 语句如果成功返回值 1。但回声没有。谢谢你

【问题讨论】:

  • 两者都是语言结构。 print 的行为类似于函数/表达式,而 echo 只能用作语句。
  • 如果我正确理解了这个问题,也许这是通过设计完成的,回声是一种使用和忘记操作。 @mario:您能否更详细地了解 echo 仅用作语句的含义。
  • echo 接受可变数量的要打印的参数。但它仅在不带括号的情况下使用。这在表达式中将是模棱两可且无法解析的。这就是为什么echo 只能用作语句(意味着只有一行中的命令)。 - 更多链接:*.com/questions/3542745/…

标签: php


【解决方案1】:

我实际上已经在 ajax 调用中利用了打印“函数”的返回值:

return print json_encode($my_data);

它对返回值根本不做任何事情,而是终止当前脚本的执行,这是一种稍微漂亮的写法

echo json_encode($my_data);
die();

但至于为什么一个人返回一些东西而另一个没有......这可能不是一个糟糕的好理由。我认为 echo 会因此而稍微快一些(可以忽略不计),而 print 有一些奇怪的用途,比如前面提到的。

至于其他人所说的print() 不是一种语言结构,而是一种功能,我对你说,read the manual。这也是一种语言结构。

【讨论】: