我想逐行读取csv文件。我已编写代码但它以加密方式提供输出。我的代码是
$row = 1;
$handle = fopen($_FILES['csv']['tmp_name'], "r");
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 :(得分:1)
这里我提交了一些示例代码来读取csv文件中的数据。
// Set path to CSV file
$csvFile = 'test.csv';
$file_handle = fopen($csvFile, 'r');
//fgetcsv($file_handle);//skips the first line while reading the csv file, uncomment this line if you want to skip the first line in csv file
while (!feof($file_handle) )
{
$csv_data[] = fgetcsv($file_handle, 1024);
}
fclose($file_handle);
/*echo '<pre>';
print_r($csv_data);
echo '</pre>';*/
foreach($csv_data as $data)
{
echo "<br>column 1 data = ".$data[0];
echo "<br>column 2 data = ".$data[1];
}
这段代码应该对您有用,即使在使用此代码后仍然遇到加密文本问题,我认为文档字符编码格式会有问题。
答案 1 :(得分:0)
这与PHP fgetcsv()
文档中的示例#1基本完全相同。检查输入文件,因为这里没有什么可以“加密”数据。如果文件以外来字符集编码,并且您在ISO-8859上输出,那么您将获得“加密”输出。