Ваш второй цикл for
не нужен, вы можете получить доступ к значениям после explode
.
explode()
ваша строка $data
на ,
, цикл по результатам и explode()
каждый результат (если он не пустой) по пробелу:
<?php
$data = "3 003.3.003.003.006 31500.0,3 003.3.003.003.003 76500.0,4 003.3.003.003.002 72000.0,5 003.3.003.003.004 153750.0,6 003.3.003.003.005 187500.0,3 003.3.003.003.001 46500.0,";
$exone = explode(",", $data);
foreach ( $exone as $x ) {
if ( !empty($x) ) {
$extwo = explode(" ", $x);
// var_dump($extwo);
$sql = "INSERT INTO tbl_test(qty, kode, price) VALUES('{$extwo[0]}','{$extwo[1]}','{$extwo[2]}');";
echo $sql . PHP_EOL;
}
}
Выход:
INSERT INTO tbl_test(qty, kode, price) VALUES('3','003.3.003.003.006','31500.0');
INSERT INTO tbl_test(qty, kode, price) VALUES('3','003.3.003.003.003','76500.0');
INSERT INTO tbl_test(qty, kode, price) VALUES('4','003.3.003.003.002','72000.0');
INSERT INTO tbl_test(qty, kode, price) VALUES('5','003.3.003.003.004','153750.0');
INSERT INTO tbl_test(qty, kode, price) VALUES('6','003.3.003.003.005','187500.0');
INSERT INTO tbl_test(qty, kode, price) VALUES('3','003.3.003.003.001','46500.0');
Если вы раскомментируете строку // var_dump($extwo);
, вы увидите, что $extwo
- это массив с желаемыми значениями.Вы можете получить к ним доступ, используя $extwo[0]
, $extwo[1]
...