>백엔드 개발 >PHP 튜토리얼 >PHP는 Excel 파일 데이터를 처리합니다.

PHP는 Excel 파일 데이터를 처리합니다.

不言
不言원래의
2018-04-26 11:57:122485검색

이 글의 내용은 엑셀 파일 데이터를 처리하는 PHP에 대한 내용입니다. 이제 모든 사람과 공유합니다. 도움이 필요한 친구들이 참고할 수 있습니다.

이 글은 주로 PHPexcel 플러그를 사용하는 방법을 기록합니다. -in은 Excel 파일을 처리하는 데 사용됩니다. 플러그인을 다운로드하는 데 문제가 있는 경우 메시지를 남겨주세요. 메모 내용은 다음과 같습니다.

1. 엑셀 플러그인 파일

require_once('./PhpSpreadsheet/vendor/autoload.php');

2를 소개합니다.

//创建文件读取类对象
$reader = \PhpOffice\PhpSpreadsheet\IOFactory::createReader("Xlsx"); 
/**  Advise the Reader that we only want to load cell data  **/
//设置为只读模式$reader->setReadDataOnly(true);
/**  Load $inputFileName to a Spreadsheet Object  **/
//加载文件路径,路径为绝对路径
$spreadsheet = $reader->load($file_path);
//获取excel表中有多少个sheet
$sheetNum = $spreadsheet->getSheetCount();
$sheetData = [];
$temp = [];
//只获取活跃的sheet
//$temp = $spreadsheet->getSheetActive()->toArray(null, true, true, true);
//遍历每一个sheet,获取里面的数据内容
for($i = 0; $i < $sheetNum; $i++){    
$temp = $spreadsheet->getSheet($i)->toArray(null, true, true, true);    
foreach ($temp as $v) {        
if(is_float($v[&#39;A&#39;])){            
$sheetData[] = $v;
        }
    }
}

출력 형식은 다음과 같습니다.

var_dump($sheetData);

/*    
    &#39;A&#39; => float 41746
    &#39;B&#39; => string &#39;玉雪婵娟&#39; (length=12)    &#39;C&#39; => float 236979210
    &#39;D&#39; => string &#39;353343073072008&#39; (length=15)    &#39;E&#39; => float 41740
    &#39;F&#39; => null*/

3. 유용하다고 생각되는 데이터:

//获取excel表中的数据记录
$excel_records$temp = [];
$excel_records = [];
foreach ($sheetData as $v){    
//strtotime(gmdate("Y-m-d", ($sheetData[$i][&#39;F&#39;] -25569) * 86400))

    //将表格中的时间字符串转为时间格式
    $temp[&#39;date&#39;] = gmdate("Y-m-d", ($v[&#39;A&#39;] -25569) * 86400);//2018年获取为2014年,尚不明原因

    $temp[&#39;drname&#39;] = $v[&#39;B&#39;];    $temp[&#39;uid&#39;] = $v[&#39;C&#39;];    $temp[&#39;imei&#39;] = $v[&#39;D&#39;];    $temp[&#39;reg_date&#39;] = $v[&#39;E&#39;];    $excel_records[] = $temp;
}

직접 후속 조치 데이터를 처리하세요.

관련 권장 사항:

php 배열 키 값 변경 처리

php 양식 업로드 파일 처리 방법

위 내용은 PHP는 Excel 파일 데이터를 처리합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.