保存记录时这个简单的演员是否安全?

Rea*_*lar 2 php cakephp cakephp-2.2

对于CakePHP中的大多数模型,我经常创建一个处理保存记录的函数.Model的保存的默认行为是返回数据数组或false.

我更喜欢该函数只返回true/false.所以我将结果转换为(bool).这是将某些东西投射到布尔值的有效方法吗?

它永远不会奏效,但我常常想知道这是不是很糟糕的做法.

public function queue($url,$order=0)
{
    $result = $this->save(array(
        $this->alias => array(
            'agg_domain_id' => $domain_id,
            'order' => $order,
            'url' => $url
        )
    ));

    return (bool)$result;
}
Run Code Online (Sandbox Code Playgroud)

bit*_*ing 5

来自php.net:

要将值显式转换为布尔值,请使用(bool)或(boolean)强制转换.但是,在大多数情况下,强制转换是不必要的,因为如果运算符,函数或控制结构需要布尔参数,则会自动转换值.

所以,如果你这样做,if($this->queue('url',0))那么演员就没有必要了.

但如果你这样做,if($this->queue('url',0) === true)你需要施展.铸造(bool)是绝对合法的.