用php读取csv文件

用php读取csv文件,php,csv,Php,Csv,我想逐行读取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 /></

我想逐行读取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);
$row=1;
$handle=fopen($_文件['csv']['tmp_名称'],“r”);
while(($data=fgetcsv($handle,1000,“,”)!=FALSE){
$num=计数($data);
echo“$num字段位于第$row行:

\n”; $row++; 对于($c=0;$c<$num;$c++){ echo$data[$c]。“
\n”; } } fclose($handle);
这基本上与PHP文档中的示例1完全相同。检查您的输入文件,因为这里没有任何真正的东西可以“加密”数据。如果文件以外来字符集编码,并且您在ISO-8859上输出,那么您将获得“加密”输出。

这里我提交一些示例代码,以从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];
}
//设置CSV文件的路径
$csvFile='test.csv';
$file_handle=fopen($csvFile,'r');
//fgetcsv($file_handle)//读取csv文件时跳过第一行,如果要跳过csv文件中的第一行,请取消对此行的注释
而(!feof($file_handle))
{
$csv_data[]=fgetcsv($file_handle,1024);
}
fclose($file\u handle);
/*回声';
打印(csv数据);
回声'*/
foreach($csv\u数据作为$data)
{
echo“
第1列数据=”.$data[0]; echo“
第2列数据=”.$data[1]; }

这段代码应该适用于您,即使在使用了这段代码之后,如果您仍然面临加密文本的问题,那么我认为文档字符编码格式会有一些问题。

另外,请您也用php标记这篇文章(您的主题行说明了这一点,但如果您也可以标记这一问题则会有所帮助)如果您可以向我们展示示例输入数据,你的预期结果和你的实际结果,答案可能更容易看到。