PHP 中的构造函数
2022-08-30 23:21:58
PHP 中的构造函数方法是否采用类中声明的参数?
我在多个网站和书籍以及PHP文档中看到函数__construct()不采用任何参数。
PHP 中的构造函数方法是否采用类中声明的参数?
我在多个网站和书籍以及PHP文档中看到函数__construct()不采用任何参数。
PHP 构造函数可以像其他函数一样采用参数。不需要向函数添加参数,例如:__construct()
示例 1:不带参数
<?php
class example {
public $var;
function __construct() {
$this->var = "My example.";
}
}
$example = new example;
echo $example->var; // Prints: My example.
?>
示例 2:使用参数
<?php
class example {
public $var;
function __construct($param) {
$this->var = $param;
}
}
$example = new example("Custom parameter");
echo $example->var; // Prints: Custom parameter
?>
__construct
可以取参数。根据官方文档,此方法签名为:
void __construct ([ mixed $args = "" [, $... ]] )
所以它似乎可以采取参数!
如何使用它:
class MyClass {
public function __construct($a) {
echo $a;
}
}
$a = new MyClass('Hello, World!'); // Will print "Hello, World!"