如何优化if else语句

Rah*_*hul 1 php eloquent laravel-5

 foreach ($remote_user_detail as $value){
        $user = User::where('unique_id',$value->userid)->first();

        if(count($user) > 0){
            $user->unique_id = $value->userid;
            $user->user_first_name = $value->name;
            $user->card_id = $value->cardnumber;
            $user->save();
        }else{
            $user = new User();
            $user->company_id = Auth::user()->company_id;
            $user->user_label = 2;
            $user->unique_id = $value->userid;
            $user->user_first_name = ($value->name=='') ? '' : $value->name ;
            $user->card_id = $value->cardnumber;
       $user->save();
}
}
Run Code Online (Sandbox Code Playgroud)

现在我应该如何优化这个,否则因为唯一的id user_first_name和卡号是相同的

M K*_*aid 6

根据您的if检查,不需要if检查,因为如果$value->name == ''您要保存空字符串$user->user_first_name = '',那么您可以删除,如果检查

$user = new User();
$user->company_id = Auth::user()->company_id;
$user->user_label = 2;
$user->unique_id = $value->userid;
$user->user_first_name = $value->name;
$user->card_id = $value->cardnumber;
$user->save();
Run Code Online (Sandbox Code Playgroud)

编辑更新的代码库,您可以将代码重构为

foreach ($remote_user_detail as $value){
    $user = User::where('unique_id',$value->userid)->first();
    if(count($user) == 0){
        $user = new User();
        $user->company_id = Auth::user()->company_id;
        $user->user_label = 2;
        $user->unique_id = $value->userid;
    }
    $user->user_first_name = $value->name;
    $user->card_id = $value->cardnumber;
    $user->save();
}
Run Code Online (Sandbox Code Playgroud)