介绍一个php读取数据csv文件具体内容的源代码,学习运用fgetcsv函数读取数据csv文件具体内容的办法,包含php操作csv文件的小技巧,相当有着使用价值。下面我们一起来看看PHP如何读写csv格式的文件吧。
一、读取csv格式文件
function read_csv($file){ setlocale(LC_ALL,'zh_CN');//linux系统下生效 $data = null;//返回的文件数据行 if(!is_file($file)&&!file_exists($file)) { die('文件错误'); } $cvs_file = fopen($file,'r'); //开始读取csv文件数据 $i = 0;//记录cvs的行 while ($file_data = fgetcsv($cvs_file)) { $i++; if($i==1) { continue;//过滤表头 } if($file_data[0]!='') { $data[$i] = $file_data; } } fclose($cvs_file); return $data; }
二、写入csv格式文件
function createcsv($csv_body){ // 头部标题 $csv_header = array('sku','我们自己的成本价','京东自己的销售价','对比结果'); /** * 作者:PHP点点通 www.phpddt.com * 开始生成 * 1. 首先将数组拆分成以逗号(注意需要英文)分割的字符串 * 2. 然后加上每行的换行符号,这里建议直接使用PHP的预定义 * 常量PHP_EOL * 3. 最后写入文件 */// 打开文件资源,不存在则创建 $des_file = 'd:/res.csv'; $fp = fopen( $des_file,'a');// 处理头部标题 $header = implode(',', $csv_header) . PHP_EOL;// 处理内容 $content = ''; foreach ($csv_body as $k => $v) { $content .= implode(',', $v) . PHP_EOL; }// 拼接 $csv = $header.$content;// 写入并关闭资源 fwrite($fp, $csv); fclose($fp); }
三、fgetcsv函数定义和用法
fgetcsv() 函数从打开的文件中解析一行,校验 CSV 字段。fgetcsv() 函数会在到达指定长度或读到文件末尾(EOF)时(以先到者为准),停止返回一个新行。该函数如果成功则以数组形式返回 CSV 字段,如果失败或者到达文件末尾(EOF)则返回 FALSE。
2021年1月26日 上午10:08 1F
感谢博主分享 支持一下