【发布时间】:2017-08-09 03:49:38
【问题描述】:
我已经被这个问题困扰了很长一段时间了。在 laravel 的社交名流的帮助下,我有了这个特殊的数组。
"first_name" => "xxx"
"last_name" => "xx"
"email" => "xxx@gmail.com"
"work" => array:2 [▼
0 => array:4 [▼
"employer" => array:2 [▼
"id" => "xxxxxxxxxxxxxx"
"name" => "FBI"
]
"location" => array:2 [▶]
"start_date" => "0000-00"
"id" => "496298904045521"
]
1 => array:6 [▶]
]
我想做的是从work获取first_name、last_name、email和name,然后将其保存在数据库中。问题是我似乎无法检索工作名称,而是给了我这个错误消息
(1/1) 错误异常 未定义索引:雇主
我怎样才能做到这一点?在这里很迷失。
控制器
public function handleProviderCallback()
{
$usersocialite = Socialite::driver('facebook')->fields([
'first_name', 'last_name', 'email', 'work'
])->user();
//dd($usersocialite);
$findUser = Fbuser::where('email',$usersocialite->email)->first();
if ($findUser) {
Auth::login($findUser);
return view('home');
}else{
$user = new Fbuser;
$user->first_name = $usersocialite->user['first_name'];
$user->last_name = $usersocialite->user['last_name'];
$user->email = $usersocialite->user['email'];
$work=$usersocialite->user['work'];
$w = collect([$work=>[$usersocialite->user['employer']=>[$usersocialite->user['name']]]]);
$flattened = $w->flatten();
$flatten->all();
$user->work = $usersocialite->user[$flatten];
$user->save();
Auth::login($user);
return view('home');
}
}
【问题讨论】:
标签: php arrays laravel multidimensional-array laravel-5.4