PHP这个代码,如何设置从第二行开始遍历。
<?phpheader("Content-Type:text/html;charset=utf-8");$link=mysqli_connect("127.0.0.1",...
<?php
header("Content-Type: text/html; charset=utf-8");
$link = mysqli_connect("127.0.0.1", "root", "root", "test");
if (!$link){echo"<script>alert('数据库连接失败!')</script>";}
$link->query("SET NAMES UTF8");
$file=fopen("sss.csv","r");
while(! feof($file)){
$data=fgetcsv($file);
if(!is_array($data)) continue;//如果不是数组就跳出循环
$sql=$p="";
foreach($data as $val){$sql.=$p."'".mb_convert_encoding($val,'UTF-8','GBK')."'";//foreach遍历数组
$p=",";
}
$sql="INSERT INTO testt (aaa, bbb, ccc) VALUES (".$sql.")";
$link->query($sql);
}
fclose($file);
echo "ok";
?>
或者第二行才开始写如SQL也行。 展开
header("Content-Type: text/html; charset=utf-8");
$link = mysqli_connect("127.0.0.1", "root", "root", "test");
if (!$link){echo"<script>alert('数据库连接失败!')</script>";}
$link->query("SET NAMES UTF8");
$file=fopen("sss.csv","r");
while(! feof($file)){
$data=fgetcsv($file);
if(!is_array($data)) continue;//如果不是数组就跳出循环
$sql=$p="";
foreach($data as $val){$sql.=$p."'".mb_convert_encoding($val,'UTF-8','GBK')."'";//foreach遍历数组
$p=",";
}
$sql="INSERT INTO testt (aaa, bbb, ccc) VALUES (".$sql.")";
$link->query($sql);
}
fclose($file);
echo "ok";
?>
或者第二行才开始写如SQL也行。 展开
展开全部
你可以这样,把$data定义成一个数组,先将内容读入数组,然后从数组的第二个开始读取解析。
追问
我不是很懂,在我的代码基础上改好可以吗?谢谢。
还有,$sql=$p="";这句是什么意思?谢谢。
追答
你这样试试:
<?php
header("Content-Type: text/html; charset=utf-8");
$link = mysqli_connect("127.0.0.1", "root", "root", "test");
if (!$link){echo"<script>alert('数据库连接失败!')</script>";}
$link->query("SET NAMES UTF8");
$file=fopen("sss.csv","r");
while ($data = fgetcsv($file)) {
$dlist[] = $data;
}
foreach ($dlist as $arr){
$sql=$p="";
foreach($arr as $val){
$sql.=$p."'".mb_convert_encoding($val,'UTF-8','GBK')."'";//foreach遍历数组
$p=",";
}
}
$sql="INSERT INTO testt (aaa, bbb, ccc) VALUES (".$sql.")";
$link->query($sql);
}
fclose($file);
echo "ok";
?>
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询