为了账号安全,请及时绑定邮箱和手机立即绑定

如何根据条件显示消息 - 使用 Laravel

如何根据条件显示消息 - 使用 Laravel

PHP
哔哔one 2021-06-21 17:04:29
这是我的控制器代码: public function getGroupAgainstMember(Request $request){    $user_id = $request->input('user_id');    $user =User::find($user_id);    $groupDetails=$user->groups; // Trying to get property of non-object    if (empty($groupDetails)) {        $resultArray = ['status' => false, 'message' => 'Group details.', 'data' => []];        return \Illuminate\Support\Facades\Response::json($resultArray, 200);    }    if ($groupDetails)        $resultArray = ['status' => true, 'message' => 'Group & Members details!', 'groups' => $groupDetails];    else        $resultArray = ['status' => false, 'message' => 'Group details not found.', 'data' => []];    return \Illuminate\Support\Facades\Response::json($resultArray, 200);}我正在根据用户 ID 获取记录,如果用户 ID 存在,它会向我显示该用户 ID 的数据,如果我输入随机用户 ID(如 1233),它会说“尝试获取非对象的属性”我也在我的代码中提到了这个错误它的到来。如果我输入诸如 1234 之类的任何 ID,我想显示一条用户 ID 不存在的消息,我还设置了条件 if(empty($$groupDetails)) 但没有显示正确的错误消息。
查看完整描述

3 回答

?
守着一只汪

TA贡献1872条经验 获得超3个赞

在这一行之后:


$user =User::find($user_id);

你可以添加这样的东西:


if(!$user){

    return response()->json(["message"=>"User not found"]);

}


查看完整回答
反对 回复 2021-06-25
?
一只甜甜圈

TA贡献1836条经验 获得超5个赞

问题是你试图获得 null 的属性。当用户不存在时,$user它不是一个对象并且它没有任何道具


$user = User::find($user_id);

$groupDetails = ($user) ? $user->groups : collect([]); // if user exists get groups, if not - empty collection

我想显示用户 ID 不存在的消息


那么你可以这样做:


$user = User::find($user_id);

if (null === $user) { // or just if (!$user)

    $resultArray = ['status' => false, 'message' => 'User does not exist.', 'data' => []];

    return \Illuminate\Support\Facades\Response::json($resultArray, 200);

}


查看完整回答
反对 回复 2021-06-25
?
largeQ

TA贡献2039条经验 获得超7个赞

如果你想显示用户id不存在的消息


 public function getGroupAgainstMember(Request $request){


    $post = $request->all();


    $user = User::find($post['user_id']);


    if($user){

         // your code

    } else {

        return response()->json(['status' => false, 'message' => 'User not found']);

    }  

 }


查看完整回答
反对 回复 2021-06-25
  • 3 回答
  • 0 关注
  • 117 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信