我想在课堂上再次调用 __construct 函数
像这样的东西:
class user{
function __construct($ID = null)
{
if($ID){
//code
}
function findUser()
{
//code
$this->__construct($ID);
}
}
当然这不起作用,但是正确的方法是什么?
我想在课堂上再次调用 __construct 函数
像这样的东西:
class user{
function __construct($ID = null)
{
if($ID){
//code
}
function findUser()
{
//code
$this->__construct($ID);
}
}
当然这不起作用,但是正确的方法是什么?
class user{
function __construct($ID = null)
{
if($ID){
//code
}
static function find($id)
{
return new user($id);
}
}
$user = user::find(42);
如果你想覆盖当前实例中的当前值,我会这样做:
class user{
function __construct($ID = null)
{
$this->reinit($ID);
}
function reinit($id)
{
if($id) {
//code
}
}
}
重命名该函数,以便您可以调用它:
class user {
function __construct($ID = null)
{
$this->initialize($ID);
}
private function initialize($ID = null)
{
if($ID){
//code
}
function findUser()
{
//code
$this->initialize($ID);
}
}
尝试:
function findUser(){
self::__construct($ID);
}