我想將我的$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;
}
}
uj5u.com熱心網友回復:
您可以array_slice()按照您所說的將陣列拆分為前 5 個,然后將其余的全部拆分。
$input = [ "key1" => "value1",
"key2" => "value2",
"key3" => "value3",
"key4" => "value4",
"key5" => "value5",
"key6" => "value6",
"key7" => "value7",
"key8" => "value8",
"key9" => "value9",
"key10" => "value10",
"_token" => "47p7eZpSOVOP0kSrL1HBSXn2OrvYT1kCiNoR2Ekr",
"submit" => "Save"
];
$p1 = array_slice($input, 0, 5);
$p2 = array_slice($input, 5);
print_r($p1);
print_r($p2);
結果
Array
(
[key1] => value1
[key2] => value2
[key3] => value3
[key4] => value4
[key5] => value5
)
Array
(
[key6] => value6
[key7] => value7
[key8] => value8
[key9] => value9
[key10] => value10
[_token] => 47p7eZpSOVOP0kSrL1HBSXn2OrvYT1kCiNoR2Ekr
[submit] => Save
)
uj5u.com熱心網友回復:
陣列塊沒有用,但這個有效:
$first_array = [];
$second_array = [];
$count = 0;
foreach ($request->all() as $key => $value) {
if ($count <= 7) {
$first_array[$key] = $value;
} else {
$second_array[$key] = $value;
}
$count ;
}
dd($first_array);
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/374947.html
上一篇:通過另一個表的ID從一個表接收值
