【发布时间】:2019-12-22 10:10:18
【问题描述】:
我有以下课程
class FormValidator{
public function __construct() {}
public function __destruct(){}
private $value;
public function Value($value){
$this->value = trim($value);
return $this;
}
public function Required(){
if(empty($this->value)){
return false;
}
else{
return $this;
}
}
public function MinLength($length){
$len = strlen($this->value);
if($len < $length){
return false;
}
else{
return $this;
}
}
}
在我的 php 代码中,我正在调用 -
$validator = new FormValidator();
$result = $validator->Value("")->Required()->MinLength(5)->SomeOtherMethod();
上面一行给出了错误Call to a member function MinLength() on a non-object ...
更新:如果 Required() 返回 false,我需要停止调用 MinLength()。
我怎样才能使我的陈述发挥作用?
【问题讨论】:
-
Required返回布尔值或 $this。也许您可以先检查Required 和MinLengthif($validator->Required() && $validator->MinLength(5)) { $validator->Value("")->SomeOtherMethod(); } -
如果您仍在使用 PHP 5,我强烈建议您尽快升级。不再支持此版本。 Let Rasmus Lerdorf explain it to you
标签: php