Разделите вывод .serialize () и создайте оператор вставки для каждой разделенной части

0

У меня есть 3 таблицы и строка вывода из .serialize().

Табл. 1:

parameter (parameterid, parametername)

Таблица 2:

parametervalue (parametervalueid, parameterid_fk, appid_fk, parametervalue)

Таблица 3:

app (appid, ..., ...)

.serialize() Выход:

4=Test&6=This is a test&9=19&15=Bla Bla Bla&appid=19746

4 = parameterid, Test=parametervalue, appid=19746

Для каждой "части" вывода serialize я хочу сделать INSERT, которая добавит parameterid, appid и parametervalue в parametervalue таблицы. Как я могу разделить это и добавить его динамически? "Раскол" должен выполняться с использованием PHP.

Теги:
split

1 ответ

0
Лучший ответ

Использовать parse_str():

$str = '4=Test&6=This is a test&9=19&15=Bla Bla Bla&appid=19746';
$result = array();
parse_str($str, $result);
print_r($result);

Вывод:

Array
(
    [4] => Test
    [6] => This is a test
    [9] => 19
    [15] => Bla Bla Bla
    [appid] => 19746
)

И теперь, чтобы сделать INSERT, вы можете пропустить разбитый массив:

foreach ($result as $part) {
    // do the INSERT
}

Демо!

  • 0
    Большое спасибо, Амаль!
  • 0
    @doonot: Добро пожаловать! :)
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню