(PHP 4, PHP 5)
echo — Выводит одну или более строк
Выводит все аргументы.
На самом деле echo() - это не функция, а конструкция языка, поэтому заключать аргументы в скобки не обязательно, даже при использовании нескольких аргументов.
Пример #1 Примеры использования echo()
<?php
echo "Привет мир!";
echo "Это занимет
несколько строк. Переводы строки тоже
выводятся";
echo "Это занимет\nнесколько строк. Переводы строки тоже\nвыводятся";
echo "Экранирование символов делается \"Так\".";
// с echo можно использовать переменные ...
$foo = "foobar";
$bar = "barbaz";
echo "foo - это $foo"; // foo - это foobar
// ... и массивы
$bar = array("value" => "foo");
echo "это {$bar['value']} !"; // это foo !
// При использовании одиночных кавычек выводится
// имя переменной,а не значение
echo 'foo - это $foo'; // foo - это $foo
// можно вывести просто значения переменных
echo $foo; // foobar
echo $foo,$bar; // foobarbarbaz
// Некоторые предпочитают передачу нескольких аргументов
// вместо конкатенации
echo 'Эта ', 'строка ', 'была ', 'создана ', 'несколькими параметрами.', chr(10);
echo 'Эта ' . 'строка ' . 'была ' . 'создана ' . 'с помощью конкатенации.' . "\n";
echo <<<END
Здесь используется синтаксис "here document" для вывода
нескольких строк с подстановкой переменных $variable.
Заметьте,что закрывающий идентификатор должен
располагаться в отдельной строке. никаких пробелов!
END;
// Следующая строка неверна, так как echo не является функцией
($some_var) ? echo 'true' : echo 'false';
// Но это можно записать по другому
($some_var) ? print('true'): print('false'); // print является функцией
echo $some_var ? 'true': 'false'; // echo вынесен за пределы выражения
?>
echo() имеет также краткую форму, представляющую собой знак равенства, следующий непосредственно за открывающим тэгом. Этот сокращенный синтаксис допустим только когда директива конфигурации short_open_tag включена.
I have <?=$foo?> foo.
Различия между print() и echo() рассматриваются в этой статье: » http://www.faqts.com/knowledge_base/view.phtml/aid/1/fid/40
Замечание: Поскольку это языковая конструкция, а не функция, она не может вызываться при помощи переменных функций