phpexcel 读取csv大文件只读取显示A列

$file=$files;$type=strtolower(pathinfo($file,PATHINFO_EXTENSION));$path0=$fdirs;//$fi... $file = $files;
$type = strtolower( pathinfo($file, PATHINFO_EXTENSION) );
$path0 = $fdirs;

//$file = iconv('GBK', 'UTF-8//TRANSLIT//IGNORE', $file);

if (!file_exists($path0)) { die('no file!');}//根据不同类型分别操作
if( $type=='xlsx'||$type=='xls' ){
$objPHPExcel = PHPExcel_IOFactory::load($path0);
}else if( $type=='csv' ){
$objReader = PHPExcel_IOFactory::createReader('CSV')
->setDelimiter(',')
->setInputEncoding('GBK')//不设置将导致中文列内容返回boolean(false)或乱码
->setEnclosure('"')
->setSheetIndex(0);

$objPHPExcel = $objReader->load($path0);

}else{ die('Not supported file types!');
}

$sheet = $objPHPExcel->getSheet(0); // 读取第一个工作表
$highestRow = $sheet->getHighestRow(); // 取得总行数
$highestColumm = $sheet->getHighestColumn(); // 取得总列数

$str = '';
$str .= '<table border="1" cellspacing="0" bordercolor="#eeeeee" cellpadding="5" width="100%">';

//按照excel表格格式输出A-Z列
$str .= '<tr>';
$str .= '<td></td>';
for($column = 'A'; $column <= $highestColumm; $column++)
{
$str .= '<td>' .$column. '</td>';
}
$str .= '</tr>';

//按照excel表格的格式从1开始累计
for ($row = 1; $row <= $highestRow; $row++){//行数是以第1行开始
$str .= '<tr>';
$str .= '<td>' .$row. '</td>';
//输出excel表格的内容
for($column = 'A'; $column <= $highestColumm; $column++){
$str .= '<td>' .$sheet->getCell($column.$row)->getValue(). '</td>';
}
$str .= '</tr>';
}
$str .= '<table>';

echo $str;
展开
 我来答
风吹海泫
2019-05-08 · TA获得超过4016个赞
知道大有可为答主
回答量:5625
采纳率:83%
帮助的人:237万
展开全部
虽然有Excel操作类,不建议使用。php操作excel本来就很不地道,表格复杂点就出错,特别是在linux系统上就更麻烦了。
CSV是通用格式,你可以用excel另存为csv格式,再交给php处理。php有专门的fgetcsv()来读取csv中的数据。
追问
谢谢你的回复 不过我试过了fgetcsv() 且在读取上传的win电脑表格软件另存的csv之前将其转utf-8 但在linux上还是乱码的
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
V柯南
2019-05-08
知道答主
回答量:21
采纳率:0%
帮助的人:2.6万
展开全部
嗯不知道如果不行的话 就说明你买的iphone嗯盗版的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式