php count object,php-count()参数必须是在laravel中实现可计数的数组或对象

这是这里的代码:

protected function credentials(Request $request)

{

$admin=admin::where('email',$request->email)->first();

if(count($admin))

{

if($admin->status==0){

return ['email'=>'inactive','password'=>'You are not an active person, Please contact to admin'];

}

else{

return ['email'=>$request->email,'password'=>$request->password,'status'=>1];

}

}

return $request->only($this->username(), 'password');

}

当我运行代码时,此错误变为:

“count(): Parameter must be an array or an object that implements Countable”

解决方法:

请注意,在这里,当您使用count()方法时,应该有可数元素,例如数组或对象.

Admin::where('email',$request->email)->first();

但是first()方法只给您单个元素,而不是集合或数组. get()方法返回可计数的包含找到的元素的集合

除了使用count之外,您还可以直接检查变量本身是否已定义或为null

if($admin){

// do something here

}

或者您可以使用is_null()方法

if(!is_null($admin)){

// do something here

}

标签:php,laravel

来源: https://codeday.me/bug/20191011/1894585.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值