我有一个CSV文件格式如下:插件组到MySQL表
a;a1;1;0;1
b;b1;1;0;0
,并使用PHP脚本下面我可以把它转换成这样:
a;a1;1;
a;a1;0;
a;a1;1;
b;b1;1;
b;b1;0;
b;b1;0;
使用此:
$data = array();
foreach($lines as $value) {
$value = explode(";", $value);
$first = array_splice($value, 0, 2);
foreach($value as $x){
$row = $first;
$row[] = $x;
$data[] = implode(';', $row);
}
}
其中输出是一个阵列:
array(6) {
[0]=>
string(6) "a;a1;1"
[1]=>
string(6) "a;a1;0"
[2]=>
string(6) "a;a1;1"
[3]=>
string(6) "b;b1;1"
[4]=>
string(6) "b;b1;0"
[5]=>
string(6) "b;b1;0"
}
现在我想要插入此阵,我已经建立了一个mysql表,但我有麻烦......
$file = "_ss.csv";
$lines = file($file);
$count = count($lines);
$data = array();
$i = 0;
foreach($lines as $value){
$value = explode(";", $value);
$first = array_splice($value, 0, 2);
foreach($value as $x){
$row = $first;
$row[] = $x;
$data[] = implode(',', $row);
$dump = implode(',', $data);
$query="INSERT INTO csv_test2 VALUES ('$dump')";
$init=mysql_query($query);
$i++;
echo $dump;
}
}
echo "<pre>";
print_r($dump);
echo "</pre>";
任何想法如何使它工作吗?
你想如何让你的数据在表中? – Aquillo 2013-05-08 09:23:41
您的数据中可能有一些''''或''' – Kasyx 2013-05-08 09:24:38
数据如描述中所示... – 2013-05-08 09:25:19