Как я могу настроить многомерный массив?

У меня есть такой массив:

$a  = array('value' =>
    array(
        'lesson_id' => array('1','6'), 
        'knowledge_value' => array('2','7'), 
        'knowledge_description' => array('3','8'), 
        'skill_value' => array('4','9'), 
        'skill_description' => array('5','10')
    )
);

Я хочу изменить это так:

$a = array('value' =>
    array(
        array(
            'lesson_id' => '1', 
            'knowledge_value' => '2', 
            'knowledge_description' => '3',
            'skill_value' => '4',
            'skill_description' => '5'
        ),
        array(
            'lesson_id' => '6', 
            'knowledge_value' => '7', 
            'knowledge_description' => '8',
            'skill_value' => '9',
            'skill_description' => '10'
        ),
    )
);

Как мне это сделать?

Сначала нужно сделать несколько попыток. Мы будем рады помочь вам исправить ваш код существующий, но мы не будем писать его за вас.

M. Eriksson 27.05.2019 11:55

Ну, вам придется написать код! Вы уже пытались написать какой-нибудь код для этого, если да, пожалуйста, покажите его нам.

RiggsFolly 27.05.2019 11:56

Опубликуйте код своих собственных попыток, и я опубликую свой код.

Andreas 27.05.2019 12:07
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
4
3
59
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Демонстрационная ссылка

Вот фрагмент для работы, пожалуйста, смотрите встроенный документ для объяснения

$temp = [];
$keys = array_keys($a['value']); // fetched all keys
for ($i = 0; $i < count($a['value']['lesson_id']); $i++) { // compared with first count of lession_id
    $temp['value'][] = array_combine($keys, array_column($a['value'], $i)); // combined key and values
}

array_keys — Возвращает все ключи или подмножество ключей массива
array_combine — создает массив, используя один массив для ключей, а другой — для его значений
столбец_массива — Возвращает значения из одного столбца во входном массиве

Пожалуйста, давайте ТАК избегать вопросов типа «Дай мне код», не отвечая на них, пока ОП не покажет нам хотя бы попытку немного.

M. Eriksson 27.05.2019 12:06

Другие вопросы по теме