PHP中怎么读取或导出 CSV文件
发表于:2025-02-04 作者:千家信息网编辑
千家信息网最后更新 2025年02月04日,PHP中怎么读取或导出 CSV文件,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。/** * 读取CSV文件 * @param strin
千家信息网最后更新 2025年02月04日PHP中怎么读取或导出 CSV文件
PHP中怎么读取或导出 CSV文件,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
/** * 读取CSV文件 * @param string $csv_file csv文件路径 * @param int $lines 读取行数 * @param int $offset 起始行数 * @return array|bool */public function read_csv_lines($csv_file = '', $lines = 0, $offset = 0){ if (!$fp = fopen($csv_file, 'r')) { return false; } $i = $j = 0; while (false !== ($line = fgets($fp))) { if ($i++ < $offset) { continue; } break; } $data = array(); while (($j++ < $lines) && !feof($fp)) { $data[] = fgetcsv($fp); } fclose($fp); return $data;}/** * 导出CSV文件 * @param array $data 数据 * @param array $header_data 首行数据 * @param string $file_name 文件名称 * @return string */public function export_csv_1($data = [], $header_data = [], $file_name = ''){ header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename=' . $file_name); if (!empty($header_data)) { echo iconv('utf-8','gbk//TRANSLIT','"'.implode('","',$header_data).'"'."\n"); } foreach ($data as $key => $value) { $output = array(); $output[] = $value['id']; $output[] = $value['name']; echo iconv('utf-8','gbk//TRANSLIT','"'.implode('","', $output)."\"\n"); }}/** * 导出CSV文件 * @param array $data 数据 * @param array $header_data 首行数据 * @param string $file_name 文件名称 * @return string */public function export_csv_2($data = [], $header_data = [], $file_name = ''){ header('Content-Type: application/vnd.ms-excel'); header('Content-Disposition: attachment;filename='.$file_name); header('Cache-Control: max-age=0'); $fp = fopen('php://output', 'a'); if (!empty($header_data)) { foreach ($header_data as $key => $value) { $header_data[$key] = iconv('utf-8', 'gbk', $value); } fputcsv($fp, $header_data); } $num = 0; //每隔$limit行,刷新一下输出buffer,不要太大,也不要太小 $limit = 100000; //逐行取出数据,不浪费内存 $count = count($data); if ($count > 0) { for ($i = 0; $i < $count; $i++) { $num++; //刷新一下输出buffer,防止由于数据过多造成问题 if ($limit == $num) { ob_flush(); flush(); $num = 0; } $row = $data[$i]; foreach ($row as $key => $value) { $row[$key] = iconv('utf-8', 'gbk', $value); } fputcsv($fp, $row); } } fclose($fp);}
看完上述内容,你们掌握PHP中怎么读取或导出 CSV文件的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!
文件
数据
内容
方法
更多
问题
束手无策
为此
内存
原因
名称
对此
技能
篇文章
经验
行业
资讯
资讯频道
路径
频道
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
玉林兴业网络安全保卫大队陈风运
熟悉的网络技术和应用
员工维护服务器违法吗
neo4j 关系数据库
sql数据库删除多余的实例
软件开发增值税税率3%
100万用户 网络安全
高校信息化与网络安全
长春网络安全资讯人才缺口大
mac笔记本网页找不到服务器
越剧下载软件开发
数据库安全性总结
眼镜行业软件开发是哪个
数据库清除表里的重复数据
广东交友软件开发费用
中专网络安全技术专业好吗
学软件开发项目的优点
一年级网络安全书签怎么做
软件开发技术蓝图
网络安全等级保护制度ppt
农产品检测的大数据库
网络安全拜年短信
网络安全的含义与定义
长宁区信息软件开发市场
可以购买一个关服游戏的服务器吗
北京密云新建快手数据库
石景山区现代软件开发经历
数据库原理学哪本书
闵行区新能源网络技术型号
广东礼当家互联网科技有限公司