【发布时间】:2022-01-11 20:39:59
【问题描述】:
我想将我的$request->all() 数组分成两个数组,这样我就可以将两个数组发送到不同的数据库表中。
这是我收到的:
array:12 [▼
"key1" => "value1"
"key2" => "value2"
"key3" => "value3"
"key4" => "value4"
"key5" => "value5"
"key6" => "value6"
"key7" => "value7"
"key8" => "value8"
"key9" => "value9"
"key10" => "value10"
"_token" => "47p7eZpSOVOP0kSrL1HBSXn2OrvYT1kCiNoR2Ekr"
"submit" => "Save"
]
但我想要两个不同的数组,像这样:
array:5 [▼
"key1" => "value1"
"key2" => "value2"
"key3" => "value3"
"key4" => "value4"
"key5" => "value5"
]
还有:
array:7 [▼
"key6" => "value6"
"key7" => "value7"
"key8" => "value8"
"key9" => "value9"
"key10" => "value10"
"_token" => "47p7eZpSOVOP0kSrL1HBSXn2OrvYT1kCiNoR2Ekr"
"submit" => "Save"
]
我怎样才能做到这一点?对于第一个数组,我已经有了一些想法,但我不知道如何获得第二个数组。这就是我所拥有的:
$first_array = [];
$second_array = [];
foreach ($request->all() as $key => $value) {
$first_array[$key] = $value;
if ($key == 'key6') {
break;
}
}
【问题讨论】:
-
array_chunk()一个简单的谷歌就会找到你 -
另外,当您使用 Laravel 时,如果您有
Collection而不是 PHP 数组,则有chunk方法:laravel.com/docs/8.x/collections#method-chunk -
Chunk 不能解决问题,因为第一个数组必须是 5 个值,第二个数组可以是 20 个值。
-
我的意思是,如果您在帖子中的某个地方包含这些详细信息,我们会给您更好的建议。请参阅下面的
array_slice()答案,或splice收集:laravel.com/docs/8.x/collections#method-splice