可能重复:
PHP class instantiation. To use or not to use the parenthesis?
Omission of brackets and parameter-less object constructors
无论有没有括号,新类似乎都没有打扰。所以,我怀疑括号()
的用法是什么。我搜索php手册,没有得到它。有人可以解释一下吗?
答案 0 :(得分:6)
括号的目的是输入构造函数可以接受的任何参数。
class Example{
private $str;
public function __construct($str){
$this->str = $str;
}
public function output(){
echo $this->str;
}
}
$ex = new Example; // missing argument error
$ex = new Example('Something');
$ex->output(); // echos "Something"
如果您的类构造函数不接受任何参数,您可以将括号括起来。为了良好的代码,我总是保留括号,无论构造函数是否接受任何参数。
大多数来自C#或Java背景的编码员会保留括号,因为它更熟悉它们。