PHP CSV文件操作
时间:2018-11-15 15:09:25 来源:igfitidea点击:
在本教程中,我们将学习如何在PHP中处理CSV文件,包括创建和读取CSV文件。
CSV是comma-separated values
的缩写。 表示逗号分隔的值。CSV文件是一个文本文件,它以逗号分隔值的形式存储表格数据。CSV文件每行存储一条记录。它可能有一个标题。
以下是CSV示例文件的内容:
当你在文本编辑器中查看CSV文件时,它看起来像以下截图:
逗号(,)通常用于分隔CSV文件中的字段。如果字段值包含逗号(,),则将其放在双引号内,如"阿里, Inc."。不仅逗号(,),其他字符,如分号(;)也可以用来分隔字段。
即使CSV文件是一个纯文本文件,它的扩展名也是CSV,而不是txt。
PHP提供了一些有用的函数来帮助你创建和读取CSV文件。
PHP创建CSV文件
要将一行格式化为CSV格式并将其写到文件指针,可以使用fputcsv()函数。下面的例子创建了一个名为stock.csv的CSV文件:
<?php $data = array( array('排名','公司','市值(单位:亿美元)'), array('1','阿里巴巴','4594.26'), array('2','腾讯','3992.62'), array('3','美团','728.56'), array('4','拼多多','482.26'), array('5','京东','459.4'), array('6','网易','370.5'), ); // 打开csv文件进行写入 $fh = fopen('stock.csv','w'); foreach ($data as $rec) { fputcsv($fh, $rec); } fclose($fh);
PHP读取CSV文件
要读取CSV文件,可以使用fgetcsv()函数。fgetcsv()函数从文件指针的位置读取一行CSV数据,并将其放入数组中。CSV记录中的每个字段都作为元素放在数组中。一旦数组中有了数据,就很容易进行操作了。
如果在读取文件或文件指针到达文件结尾时发生错误,函数fgetcsv()将返回false。
下面的示例向您展示了如何读取我们之前创建的stock.csv文件。
<?php $csv_file = './stock.csv'; $fh = fopen($csv_file,'r') or die('打开文件时出错' . $csv_file ); $data = array(); while($rec = fgetcsv($fh)){ $data[] = $rec; } fclose($fh); var_dump($data);