如何编写这个IF条件(目前我有错误,但不知道在哪里)?
$gll_name = ($gll_id != NULL ? $w = $this->gallery_model->gallery_get_one_user($gll_id); $w->name : " ");
您不需要两个变量,而且"简写if"也不允许使用冒号。这应该有效:
$gll_name = (
$gll_id != NULL
? $this->gallery_model->gallery_get_one_user($gll_id)->name
: " ");
(注意,为了可见性,我添加了缩进,在这种情况下,它们在PHP中并不重要)
还要考虑严格条件(使用!==
而不是!=
),因为PHP会将所有伪ish值(null
、false
、0
等)视为等于(==
)到NULL
,但只有NULL
严格等于(===
)到NULL
。有关演示,请参阅:http://ideone.com/8ENsX
您试图做的事情没有意义。你必须从中的分配运算符开始
$gll_name =
然后给你的情况打个问号,例如
(1 == 1 && 2 == 2) ?
如果值为真:如果值为假,例如
'correct' : 'not good' ;
相等
$gll_name = (1 == 1 && 2 == 2) ? 'correct' : 'not good' ;