Возможные дубликаты:
Как эхо и печать отличаются в PHP?
Есть ли разница между «печатью» и «эхом» в PHP?
В чем разница между эхом, print, print_r в PHP?
Существует несколько способов печати вывода в PHP; в том числе, но не ограничивается:
echo 'Hello'; echo ('Hello'); print 'Hello'; print ('Hello');
Существуют ли различия между этими четырьмя? Кроме того, заключают ли скобки какие-либо различия?
Два отличия:
print
имеет возвращаемое значение (всегда 1), echo
– нет. Поэтому print
может использоваться как выражение.
echo
принимает несколько аргументов. Таким образом, вы можете написать echo $a, $b
вместо echo $a . $b
echo $a . $b
.
Что касается круглых скобок: они просто ошибаются в моих глазах. У них вообще нет функции. Вы могли бы также написать echo (((((((((($a))))))))))
; люди обычно включают скобки из невежества, считая, что print
является функцией. Кроме того, это увеличивает вероятность неправильного толкования. Например, print("foo") && print("bar")
не печатает foobar
, потому что PHP интерпретирует это как print(("foo") && print("bar"))
. Таким образом, bar1
будет напечатан, хотя он выглядит по-другому.