我想知道是否有任何方法可以縮短代碼長度。我正在使用2 if
聲明,我正在尋找只使用一個。事情是$user
是會話,如果您檢查$user->userId
是否存在於同一行中,則代碼將在沒有會話存在時發生錯誤。通過從不存在的對象請求userId
引起。這很合乎邏輯,但現在有沒有解決方案?PHP可能的編寫方法if
if ($user != null) {
if ($user->userId == 1) {
..
}
}
我想知道是否有任何方法可以縮短代碼長度。我正在使用2 if
聲明,我正在尋找只使用一個。事情是$user
是會話,如果您檢查$user->userId
是否存在於同一行中,則代碼將在沒有會話存在時發生錯誤。通過從不存在的對象請求userId
引起。這很合乎邏輯,但現在有沒有解決方案?PHP可能的編寫方法if
if ($user != null) {
if ($user->userId == 1) {
..
}
}
如何使用the &&
operator:
if ($user && $user->userId == 1) {
//...
}
您要使用的&&
操作。這意味着和
if ($user && $user->userId == 1) {
// do some things
}
您可能還想要查看||
運算符,它意味着或。
只有當兩個謂詞返回true時,&&
運算符纔會返回true。
只要其中一個謂詞返回true,||
運算符將返回true。
,只要你想你可以添加儘可能多的句子,只要他們得到適當的建立,在這種情況下:
if (($user != null) && ($user->userId == 1)) {
,或者你可以簡單地說:
if ($user && ($user->userId == 1)) {
如果($用戶)只是檢查變量是否已設置,或者是否爲空。
Waw,然後我做了一些錯誤,當我試圖做同樣的事情。無論如何,非常感謝。 – user2103237
@ user2103237只是爲了澄清,'如果($ user ...'檢查等同於'if($ user == true ...',那麼很可能這對你很好,但要小心'0' ,'false','''',''0''等全部*不*等於'true',而是'1','true',''false'',''1''等*做*等於'true'。 – 0b10011