Как вставить динамический многомерный массив в базу данных с помощью MySQL

У меня есть следующий массив:

Array
(
    [step1] => 3
    [step2] => Array
        (
            [1] => Array
                (
                    [type] => 2
                    [price] => 312.5
                )

            [0] => Array
                (
                    [type] => 1
                    [price] => 51.5
                )

        )

    [step3] => Array
        (
            [first_name] => Test
            [last_name] => Test
        )

    [step4] => Some answer
)

Который я хотел бы вставить в базу данных. Step2 может иметь столько элементов, сколько хочет пользователь. Как вы могли заметить, между двумя массивами шага 2 есть различия. Также шаг 3 может иметь еще несколько полей. Это все зависит от пользователя.

Причина в том, что он динамический, потому что пользователь может управлять полями ввода формы на панели инструментов.

Я пытался сделать цикл foreach для каждого шага вставки, но это не сработало. Я хотел бы сделать следующее: иметь динамический запрос, чтобы каждое поле можно было вставить в базу данных. Я думаю, что самый простой способ сделать это - выполнить цикл foreach на шаге 2, чтобы у каждого элемента были и другие значения. У меня вопрос, как я могу вставить все данные из этого многомерного массива в базу данных с mysqli (ООП).

Также проверил несколько других вопросов, таких как:Вставка данных в MySQL из многомерного массива в php, вставьте несколько строк через массив PHP в MySQL, вставить массив PHP в MySQL Но это не помогает мне. Такimplode() не поможет мне. Также сериализация не будет работать, так как каждое поле имеет свое поле в базе данных. (Когда пользователь редактирует форму в полях панели инструментов в базе данных, также изменяются)

заранее спасибо