Скобки обязательны, потому что в языковой спецификации PHP так сказано (хотя, похоже, нет явной формальной спецификации языка, который можно найти).
То, что делает PHP при обнаружении неизвестного идентификатора, выдает ошибку E_NOTICE, чтобы сообщить вам, что использовался неизвестный идентификатор, , а затем предполагает, что вы намеревались использовать этот идентификатор в качестве строки .
<?php
$foo = unknown_identifier;
echo 'Now printing: ' . $foo; // prints 'Now printing: unknown_identifier' (PHP 5.2.6)
?>
Причина, по которой вы не видите никаких ошибок, вероятна, потому что ошибки E_NOTICE ниже вашего порога сообщения об ошибках. Вы можете изменить этот порог, используя директиву error_reporting:
<?php
error_reporting(E_ALL);
$foo = unknown_identifier;
echo 'Now printing: ' . $foo;
?>
Будет выведено сообщение об ошибке «Уведомление», опубликованное Yacoby выше.
Обратите внимание, что, по ошибке, директива об ошибках E_ALL фактически не включает в себя все уровни отчетности в PHP 5.x . В PHP 5 вам нужно использовать E_ALL | E_STRICT
, чтобы включить все сообщения об ошибках.
- редактировать: многие избивают многих.