【发布时间】:2020-09-13 12:01:01
【问题描述】:
我在这里的第一篇文章。我试图寻找答案,但没有运气,所以我们开始
一般来说,我无法与您分享我正在处理的确切代码:( 所以这里是一个例子:
$collection = collect(['country' => 'Germany', 'city' => 'Berlin', 'month' => 'April']);
dd($collection);
//"country" => "Germany"
//"city" => "Berlin"
//"month" => "April"
$array1 = ['France', 'Paris', 'May'];
$array2 = ['Spain', 'Madrid', 'June'];
我的问题是 - 如何“添加”这些数组(注意数组 1 和数组 2 的顺序)所以我最终会得到这样的结果?
dd($newCollection);
//output:
//"country" => ["Germany", "France", "Spain"]
//"city" => ["Berlin", "Paris", "Madrid"]
//"month" => ["April", "May", "June"]
或
如果有办法从数据库中获取所有记录,并将其中一行作为键并将它们的选择作为值
例子
$users = User::get();
//this table has columns "full_name", "e-mail", "job", "birth_date", "city" and "password"
$collection = <<???>> //make column "full_name" as key and columns "e-mail", "job", "password" as values
dd($collection);
//output:
//"John Doe" => ["johndoe@mail.com", "Janitor", "topsecret"]
//"Jane Doe" => ["janedoe@mail.com", "teacher", "sercretpassword"]
终生感谢您的回答...我已经多次阅读 Laravel 的文档,但找不到解决方案
【问题讨论】:
-
这似乎有点毫无意义。如果您通过
User::get()获取所有$users,那么每个$user(给定循环foreach($users as $user))将包含所有这些信息,$user->full_name、$user->email、$user->job、$user->password。除非您需要特定格式'full_name' => ['email', 'job', 'password'],否则要获得您已经拥有的内容是额外的工作。 -
另外,旁注,请确保您的数据库中的
password列不是明文。如果您在users表中存储了未经哈希处理的password版本,这是一个巨大的安全漏洞。 -
这只是一个例子,所有密码都经过哈希处理;)感谢您的回答,我想我知道如何解决这个问题了!
-
优秀:) 我希望如此,只是一个确认。如果您提出解决方案,请随时将其发布为自我回答;将来可能会对其他人有所帮助。干杯!
-
为什么不 "full_name" = $users->pluck('full_name') ;等等……
标签: arrays laravel collections eloquent