Как из значений полученных через fgetcsv() составить определенный массив?

Всем привет, есть csv со следующими данными
5c17a7ae27b5f253657508.png
Как можно отсортировать их в следующий массив:
$arr = [
    '0.1' => [            // значение с правой колонки
         'old' => 0.1, // значение с правой колонки
         'new' => ['0.1'] // значение с левой колонки
    ],
    ...,
   '01.11.1' => [
        'old' => '01.11.1',
        'new' => [
              '01.11.1',
              '01.11.11',
               ....
                '01.11.2',
           ]
]
          // и т.д.


Вывести данные получилось у меня, не понятно как при условии повтора ключа old, значения new заносить в предыдущий массив.
  • Вопрос задан
  • 48 просмотров
Решения вопроса 1
Keanor
@Keanor
Ведущий разработчик
$sorted = []; // Результирующий массив
        foreach ($lines as $line) { // $line[0] - old, $line[1] - new
            $sorted[$line[1]]['old'] = $line[1];
            $sorted[$line[1]]['new'][] = $line[0];
        }


Если это не оно, то опишите конкретный набор входных данных (небольшой) и в какую конкретную структуру он должен быть преобразован, разберемся :)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы