簡體   English   中英

我想將名稱、email、聯系人的 0 索引存儲在新數組中,反之亦然所有數據

[英]I want to store the 0 indexes of name,email,contact in new array and vice versa all data

我的結果是附加數據在 laravel 中的表單請求中看起來像這樣

我希望這種類型的數組在我的結果中 append 塊的第一個數據存儲在單個索引中,反之亦然所有數據

name=>basit 
email=>kashif@gmail.com  
contact=>5454 
])  
sub_contact => array([ 
name=>basit 
email=>hamza12433@gmail.com  
contact=>53543
])

您無需更改請求數組結構。 只需循環一個元素並將值插入數據庫。

foreach($request->name as $key => $value){
    Model::create([
        'name' => $request->name[$key],
        'email' => $request->email[$key],
        'contact' => $request->contact[$key],
    ]);
}

您可以循環其中一個子數組並使用 array_column 中的鍵來獲取所有值。

$keys = array_keys($arr);

foreach($arr[$keys[0]] as $index => $value){
    $result[] = array_combine($keys, array_column($arr, $index));
}

var_dump($result);

https://3v4l.org/kUPi4


或者嵌套 foreach 以這種方式獲取值。
我相信這種方法比 array_column 更快。

foreach($arr as $key => $value){
    foreach($value as $index => $item){
        $result[$index][$key] = $item;
    }
}

var_dump($result);

https://3v4l.org/DCP5W

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM