提前感谢您的时间/帮助。我是一个学习php的新手,所以请记住这一点。
第1个问题 我需要一个读取csv文件的php脚本。
第二个问题 如何回显该文件中的特定单元格(行和行/列)
我在类似的回复中找到了这个脚本,脚本完整地读取了整个文件,但我只想在该csv文件中选择特定的单元格/值。那么如何回显特定行或行和列。
$row = 1;
if (($handle = fopen("1.csv", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$num = count($data);
echo "<p> $num fields in line $row: <br /></p>\n";
$row++;
for ($c=0; $c < $num; $c++) {
echo $data[$c] . "<br />\n";
}
}
fclose($handle);
}
答案 0 :(得分:3)
如果你需要选择几种情况,最好的方法是在php中制作一个多维数组。否则,只需将几个计数器放入while循环并完成。
$row = 1;
$mycsvfile = array(); //define the main array.
if (($handle = fopen("1.csv", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$num = count($data);
echo "<p> $num fields in line $row: <br /></p>\n";
$row++;
for ($c=0; $c < $num; $c++) {
echo $data[$c] . "<br />\n";
}
$mycsvfile[] = $data; //add the row to the main array.
}
fclose($handle);
}
echo $mycsvfile[3][1]; //prints the 4th row, second column.
答案 1 :(得分:0)
我们可以使用以下脚本根据csv头创建表和表字段。我想创建一个以表字段作为标题的表,而不是打印标题。每个字段中的数据可以是varchar(50)
$row = 1;
if (($handle = fopen("1.csv", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$num = count($data);
echo "<p> $num fields in line $row: <br /></p>\n";
$row++;
for ($c=0; $c < $num; $c++) {
echo $data[$c] . "<br />\n";
}
}
fclose($handle);
}