2017-02-13 34 views
2

echo: -

stdClass Object ([permissionId] => 23 [roleId] => 14 [view] => 0 [add] => 0 [edit] => 0 [deleteRole] => 0 [status] => 1 [moduleId] => 1)

我試圖像下面

if($res->view = 1 or $res->add = 1 or $res->edit = 1 or $res->deleteRole = 1){ 
    echo "condition true"; 
} else { 
    echo "condition false"; 
} 

的東西,但是它總是回聲條件爲真。如果條件正確?請幫助我如何寫條件。

+2

使用此 如果($水庫>視圖== 1或$水庫>添加== 1或$水庫>編輯== 1或$水庫> deleteRole == 1){ 回波「條件正確」; } else { echo「condition false」; } –

回答

3

變化==比較操作,如果你把它=總是如此,賦值運算符總是返回true

2

其實你沒有比較,你只是在做分配。 =用於轉讓不作比較。

因此,使用==代替=

if($res->view == 1 or $res->add == 1 or $res->edit == 1 or $res->deleteRole == 1){ 
     echo "condition true"; 
    } else { 
     echo "condition false"; 
    } 

OR

if($res->view == 1 || $res->add == 1 || $res->edit == 1 || $res->deleteRole == 1){ 
    echo "condition true"; 
} else { 
    echo "condition false"; 
} 

注: - 休息是先進的,你要比較和以何種方式是什麼。因此,相應地調整代碼。謝謝

1

Give ==(比較運算符)而不是=(賦值運算符)和||

if(($res->view == 1) || ($res->add == 1) || ($res->edit == 1) || ($res->deleteRole == 1)){ 
    echo "condition true"; 
} else { 
    echo "condition false"; 
}