Я новичок в PHP, но уже много лет программирую на подобных языках. Я был сбит с толку следующим:
class Foo {
public $path = array(
realpath(".")
);
}
Произошла синтаксическая ошибка: Ошибка синтаксического анализа: синтаксическая ошибка, неожиданный '(', ожидание ')' в test.php в строке 5
, который является вызов realpath
.
Но это работает нормально:
$path = array(
realpath(".")
);
После того, как я некоторое время бился об это, мне сказали, что вы не можете вызывать функции с атрибутом по умолчанию; вы должны сделать это в __ construct
. У меня вопрос: почему ?! Это «особенность» или неаккуратная реализация? В чем обоснование?