Php Laravel从db获取用户电话

Php Laravel从db获取用户电话,php,database,laravel,Php,Database,Laravel,我有一张电话桌。我正在尝试发送短信,然后用户被激活,如下所示: public function activate($token) { User::whereActivationToken($token)->firstOrFail()->confirmEmail(); $phone = $this->user->phone; flash()->success(trans('frontend.accoun

我有一张电话桌。我正在尝试发送短信,然后用户被激活,如下所示:

      public function activate($token)
    {
        User::whereActivationToken($token)->firstOrFail()->confirmEmail();
      $phone = $this->user->phone;

        flash()->success(trans('frontend.account.activated'));

        if (Auth::check()) {
            return redirect()->route('account.home');
        } else {
            return redirect()->route('auth.login');
Sms::send("activated!", function($sms) {
    $sms->to(['$phone']); # The numbers to send to.
});
        }
    }
}

但我得到了一个错误,试图得到非对象的属性。怎么了?谢谢你们的回答,伙计们,请不要生气,我是拉威尔的新手。

你们的错误可能来自这一行

$phone = $this->user->phone;
$user在该函数中不存在。也许是你在别的地方定义的。如果是这种情况,您可以使用以下方法进行修复:

$user = User::whereActivationToken($token)->firstOrFail();
$phone = $user->phone;

将代码更改为:

$user = User::whereActivationToken($token)->firstOrFail();
$user->confirmEmail();
$phone = $user->phone;

它显示错误行了吗?好的,现在我没有收到任何ERORR,但我也没有收到任何短信。我认为$phone并不代表任何东西@öММаааааааааааааааа107以了解发生了什么。感谢您帮助matte。问题是:
Sms::send(“已激活!”,函数($Sms){$Sms->to($phone);#要发送到的号码。})如果我离开(['$phone']),我会在页面上看到像:$phone这样的电话标签,但如果我删除并离开($phone),我会看到错误“Undefined variable:phone”。看起来真的很奇怪