Создание экземпляра класса PHP. Использовать или не использовать скобки? [закрытый]
Я всегда предполагал, что - при отсутствии параметров конструктора-круглые скобки (фигурные скобки) следуют за именем класса при создании экземпляра класса, были необязательными, и что вы можете включить или исключить их по своей личной прихоти.
чтобы эти два утверждения были равны:
$foo = new bar;
$foo = new bar();
Я прав? Или есть какое-то значение для скобок, о которых я не знаю?
Я знаю, что это звучит как вопрос RTM, но я искал некоторое время (включая весь раздел PHP OOP), и я не могу найти прямого ответа.
2 ответа:
они эквивалентны. Если вы не кодируете с помощью любого конвенция код, использовать который вам больше нравится. Лично я хотел бы оставить его, так как это действительно просто беспорядок для меня.
$foo = new bar()
было бы полезно более$foo = new bar
Если вы передавали аргументы конструктору. Например:class bar { public $user_id; function __construct( $user_id ) { $this->user_id = $user_id } }
-
$foo = new bar( $user_id );
кроме того, и как уже упоминалось в принятом ответе, нет никакой разницы.