PHP函数中的返回语句


Return statement in PHP functions

我在PHP中有一些返回语句的问题。问题是,不管函数内部发生了什么我总是得到一个假值。我真的认为这是因为Return语句,因为我试图在其他函数中使用它,我没有得到不同的值。

public function valid_token ()
{
    if (!isset($_SESSION['token']) || $this->token != $_SESSION['token'])
    {
        $this->errors[] = "Formulario incorrecto";
    }
return count($this->errors)? 0 : 1;
}
在这个函数中,我总是得到一个false值(0)。当我调用: 时也会发生同样的情况
public function valid_data () 
{
    if (empty($this->sectorName) || empty($this->sectorInfo) || empty($this->sectorCat))
    {
        $this->errors [] = "Datos incorrectos";
    }
return count($this->errors)? 0 : 1;
}

当然,当我已经发送了表单并设置了令牌时,我调用了这两个函数。

因为你只是在计数而不是检查,试试这个

return count($this->errors) > 0 ? 0 : 1;

更简单地说,

return !$this->errors;