Вы можете многое сделать с одной строкой, если отформатировать ее и затем преобразовать в массив.
Это две команды, которые очень полезны для этого:
взорваться ()
взрываться ()
Вы сказали, что ваши данные «1 джем сша 2 дара сша 3 Дэвид сша», поэтому давайте поместим это в пригодный для использования формат строки:
$strtoalvalue= "1,jam,usa|2,dara,usa|3,david,usa";
Далее вы используете explode (), чтобы превратить это в массив:
$firstarray = explode("|",$strtovalue);
Теперь у вас есть массив с тремя строками:
$firstarray[0] = "1,jam,usa"
$firstarray[1] = "2,dara,usa"
$firstarray[2] = "3,david,usa"
затем вы можете перебрать $ firstarray и преобразовать каждую из его строк в массив, содержащий значения:
foreach($firstarray as $datastring){
$secondarray[] = explode(',',$data_string);
}
теперь ваш $ secondarray содержит 3 массива, которые содержат ваши данные, разделенные на отдельные части. все, что вам нужно сделать, это получить к нему доступ так:
foreach($secondarray as $data_array){
$data_id = $data_array[0];
$data_name = $data_array[1];
$data_address = $data_array[2];
$sql = "INSERT INTO table_name (id, name, address) VALUES ($data_id, '$data_name', '$data_address')";
// execute your SQL here
}
Однако, это небезопасно, вы захотите экранировать ваши данные перед тем, как объединить их в строку SQL, иначе ваш скрипт подвержен SQL-инъекциям