{
"word": ["w1", "w2"],
"meaning": ["m1", "m2"],
"parts_of_speech": ["p1", "p2"],
}
Это те данные, которые у меня есть в модели, которые теперь назначены $ данных переменная
В выше $ данных каждый слово Индекс имеет соответствующее значение в имея в виду массив, и каждый слово Индекс имеет соответствующий части речи в части речи индекс массива. Таким образом, всегда длина слово, смысл, parts_of_speech массивы остаются такими же
Я пробовал следующие методы для вставки в таблицу
$this->db->insert('table_words', $data);
$this->db->insert_batch("table_words",$data);
но это случилось ошибки
CodeIginter принимает массив для вставки, ключом которого должно быть «имя столбца», а значением должно быть запись, которую мы хотим вставить. Как я понимаю, вы должны вставить несколько строк, поэтому вы должны использовать пакетную вставку.
Попробуйте код ниже:
$data = array(
array(
'word' => 'w1' ,
'meaning' => 'm1' ,
'parts_of_speech' => 'p1'
),
array(
'word' => 'w2' ,
'meaning' => 'm2' ,
'parts_of_speech' => 'p2'
)
);
$this->db->insert_batch('mytable', $data);
Ваш JSON должен быть таким
[{"word":"w1","meaning":"m1","parts_of_speech":"p1"},{"word":"w2","meaning":"m2","parts_of_speech":"p2"}]
Других решений пока нет …