Sup*_*vah 0 php conditional return class
我想知道为什么我的php程序在其他地方包含类时没有返回正确的TRUE FALSE值
它就是这样的
source: signup.php
class signup
{
function buildProfile()
{
if($logic){
$this->success = TRUE;
}else{
$this->success = FALSE;
}
}
function __construct()
{
$this->success = NULL;
$this->buildProfile
return $this->success;
}
}
Run Code Online (Sandbox Code Playgroud)
我在其他地方
include('signup.php');
$signup = new signup();
if($signup){
successFunction();
}else....
Run Code Online (Sandbox Code Playgroud)
但它并没有得到$ signup == true,它每次都变得虚假
Vot*_*ple 24
构造函数始终返回类的新实例.您不能从构造函数返回任何其他类型的值.构建代码的更好方法是:
source: signup.php
class Signup
{
public $success;
protected function buildProfile()
{
if($logic){
$this->success = true;
}else{
$this->success = false;
}
}
public function __construct()
{
$this->success = null;
$this->buildProfile();
}
}
Run Code Online (Sandbox Code Playgroud)
然后,当你构造对象时,你可以做:
include('signup.php');
$signup = new Signup();
if($signup->success){
successFunction();
}else....
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12247 次 |
| 最近记录: |