Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何为这种情况编写更好的代码?_Php - Fatal编程技术网

Php 如何为这种情况编写更好的代码?

Php 如何为这种情况编写更好的代码?,php,Php,我希望避免使用嵌套的if语句 if (! is_null($user)){ if($user->id == $currentUser->id){ echo 'its for me'; }else{ echo 'its not for me'; } }else{ echo 'its not for me'; } 请注意,我不想使用return语句如果两种情况下的其他语句相同,您可以编写类似的语句 if (! is_null

我希望避免使用嵌套的
if
语句

if (! is_null($user)){
    if($user->id == $currentUser->id){
       echo 'its for me';
    }else{
        echo 'its not for me';
    }
}else{
    echo 'its not for me';
}

请注意,我不想使用
return
语句

如果两种情况下的其他语句相同,您可以编写类似的语句

if (! is_null($user)){
    if($user->id == $currentUser->id){
       echo 'its for me';
    }else{
        echo 'its not for me';
    }
}else{
    echo 'its not for me';
}
if (!is_null($user) && $user->id == $currentUser->id){
    echo 'its for me';
} else {
    echo 'its not for me';
}

您可以尝试以下方法:

isset函数和===运算符使其更好

 if (isset($user) && $user->id === $currentUser->id) {

    echo 'its for me';

 } else {

    echo 'its not for me';
 }
希望这有帮助

和平!xD

回显“Its”。(!is_null($user)&&&$user->id=$currentUser->id?“”:“不是”)为我",


在某些条件下,三元运算符可以使if/else子句非常短。

在if语句中使用AND。
if
语句中的第二个条件在第一个条件为false时不会运行。。我从未意识到,谢谢你。