PHP还是类似javascript的运算符?有没有一个简单的方法


PHP or operator similar to javascript? Is there a simple way?

在javascript中,我可以将对象文字作为参数传递给对象,如果不存在值,我可以通过以下代码引用默认值;

this.title = params.title || false;

用PHP有类似的方法吗?

我是PHP的新手,似乎找不到答案,如果没有像javascript这样简单的解决方案,对我来说简直是疯了!!

在PHP中,在函数调用中使用三元运算符的最佳方式是什么?

isset($params['title']) ? $params['title'] : false;

感谢

不要寻找完全等价的,因为PHP的布尔运算符和数组访问机制太不同了,无法提供这一点。您想要的是为参数提供默认值

function foo(array $params) {
    $params += array('title' => false, ...);
    echo $params['title'];
}

像这样的$title = (isset($title) && $title !== '') ? $title : false;

或者使用empty函数:

empty($params['title']) ? false : $params['title'];

$x=($myvalue==99)?"x是99":"x不是99";

PHP一行如果。。。if($myvalue==99){x是99}否则{x不是99//在此处将值设置为false}

<?php
class MyObject {
    // Default value of object property
    public $_title = null;
    // Default value of argument (constructor)
    public function __construct($title = null){
        $this->_title = $title;
    }
    // Default value of argument (setter)
    public function setTitle($title = null){
        // Always validate arguments if you're serious about what you're doing
        if(!is_null($title) and !is_string($title)){
            trigger_error('$title should be a null or a string.', E_USER_WARNING);
            return false;
        }
        $this->_title = $title;
        return true;
    }
} // class MyObject;
?>

这是使用默认值处理对象的方法1中的3种方法。您可以在类定义中默认属性值。或者在__construct分配或特定的设置器setTitle中默认它。

但这一切都取决于代码的其余部分为了正确使用PHP,您需要忘记JS。这是一个稍微严格一点的编程环境,即使类型非常松散。我们在PHP中有真实的类,而不是像JS那样提供IDE代码完成支持的虚函数类大象

相关文章: