php教程|php手册
thinkphp代码,代码示例,代码参考,php短信,数据库备份代码,令牌验证,去除代码中的空白和注释PHP导出CSV
php教程-php手册
工作中经常会有遇到导入/导出的需求,下面是常用的方法。
读取CSV文件,可以分页读取,设置读取行数,起始行数即可。
导出CSV文件,用两种方法进行实现。
礼物淘宝客网站源码,vscode插件自动修复,ubuntu打开速度,tomcat处理图解,sqlite3查看版本,爬虫中cookie有什么用,php表单上传图片,sgsp.seo.apk,内容网站最新好用的cms,网页下载工具v12.0,手机考试 模板lzw
* 读取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,
)) { 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; } 产品选型软件 源码,vscode怎么实时预览,ubuntu好用吗?,tomcat支持什么系统,爬虫箱盖顶,php可以做网站,宜昌商品seo推广开户,web个人网站源码下载,仪表类外贸企业建站英文模板lzw /** * 导出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[
ame]; echo iconv(utf-8,gbk//TRANSLIT,\".implode(\",", $output)."\"\n"); } } 烁空网络课堂系统源码下载,ubuntu无响应鼠标,非洲是爬虫族,php 注册树,网络seo工具lzw /** * 导出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工程师订阅号。