Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 17.07.2017 17:30:47

Как из трех массивов выбрать данные и записать в разные?

Laravel 5.4 php 7.1

Как из трех массивов выбрать данные и записать в разные:
Есть:

"role_id" => array:8 [▼
    0 => "1"
    1 => "2"
    2 => "3"
    3 => "4"
    4 => "5"
    5 => "6"
    6 => "7"
    7 => "8"
  ]
  "reason" => array:8 [▼
    0 => null
    1 => "<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque sagittis.</p>"
    2 => "<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque sagittis.</p>"
    3 => null
    4 => null
    5 => null
    6 => null
    7 => null
  ]
  "opening_date" => array:8 [▼
    0 => null
    1 => "17/09/2017"
    2 => "17/10/2017"
    3 => null
    4 => null
    5 => null
    6 => null
    7 => null
  ]
Нужно:
[
role_id => 1
reason => Text
opening_date => Date
],
[
role_id => 1
reason => Text
opening_date => Date
],

И так далее...

Изменено OlegSika (17.07.2017 17:41:32)

Не в сети

#2 17.07.2017 17:36:56

Re: Как из трех массивов выбрать данные и записать в разные?

Почему бы не использовать банальный for? Что-то вроде:

$arraySize = count($data['role_id']);
$result = [];

for ($i=0; $i < $arraySize; $i++) {
    $result[] = [
        'role_id' => $data['role_id'][$i],
        'reason' => $data['reason'][$i],
        'opening_date' => $data['opening_date'][$i],
    ];
}

Не в сети

Подвал раздела