제목 | phpoffice 엑셀 업로드 오류건에 대한 질문입니다. | ||
---|---|---|---|
카테고리 | CI 4 관련 | ||
글쓴이 | 엘제이 | 작성시각 | 2023/02/22 12:11:02 |
|
|||
제 개인서버에서 엑셀업로드 하여 임포트가 잘됩니다. 개발서버에 서 안치하고 실행해보면 아래와 같이 오류가 나옵니다. var_dump 내용은 아래오류내용중 파일이 없다 그래서 찍어봤는데 나오더군요 파일이 파일이 올려졌는데 없다고 나오는건..
배열(1) { ["업파일"]=> 배열(6) { ["이름"]=> 배열(1) { [0]=> string(46) "2021_2차수_사업비집행실적_전체.xlsx" } ["full_path"]=> 배열(1) { [0]=> string(46) "2021_2차수_사업비집행실적_전체.xlsx" } ["유형"]=> 배열(1) { [0]=> 문자열(0) "" } ["tmp_name"]=> 배열(1) { [0]=> 문자열(0) "" } ["오류"]=> 배열(1) { [0]=> 정수(1) } ["크기"]=> 배열(1) { [0]=> 지능(0) } } } PhpOffice\Php스프레드시트\리더\예외 파일 ""이(가) 없습니다
class ExcelLibrary { private $SpreadSheet; private $CommonLib; public function __construct() { $this->SpreadSheet = new Spreadsheet(); $this->CommonLib = new CommonLibrary(); } public function import($Files, $Var_name ) { $ExcelData = array(); if( is_array($Files) AND !empty($Var_name) ){ if( !isset($Files[$Var_name]) ){ return throw new \Exception( "첨부파일 정보를 알 수 없습니다." ); } $File = $Files[$Var_name]; $ImportCount = 1; if (is_array($File['name'])) { // 배열로 전달받은 개수만큼 foreach($File['name'] as $key => $value) { // 빈 배열로 넘어올 경우를 방지 if( !empty($File['name'][$key]) ){ // 파일크기 비교 if( PolicyType::ExcelFileSize < $File['size'][$key] ){ return throw new \Exception( "첨부파일의 파일 크기를 확인하세요." ); } // 허용 가능한 확장자 비교 $FileName_Arr = explode('.', $File['name'][$key]); $extension = strtolower(end($FileName_Arr)); // 확장자 찾기 if( !in_array($extension, PolicyType::ExcelImportExtension) ){ return throw new \Exception( "첨부파일의 확장자를 확인하세요." ); } // 확장자에 따른 Reader 처리 if ('csv' == $extension){ $reader = new ReaderCsv(); } else{ $reader = new ReaderXlsx(); } $spreadsheet = $reader->load($File['tmp_name'][$key]); $ExcelData[] = $spreadsheet->getActiveSheet()->toArray(); unset($FileName_Arr, $extension, $reader, $spreadsheet); $ImportCount++; } } } } return $ExcelData; } // 엑셀 다운로드(HTML 타입) public function HTMLExport($ExcelFileName, $ExcelData) { $Result = ""; if( !empty($ExcelFileName) AND !empty($ExcelData) ){ $dates = Date("Ymd"); header("Content-type: application/vnd.ms-excel; charset=utf-8"); header("Content-Disposition: attachment; filename = " . $ExcelFileName . "_" . $dates . ".xls"); header("Content-Description: PHP4 Generated Data"); echo "<meta http-equiv='Content-Type' content='text/html; charset=utf-8'>"; echo $ExcelData; } return $Result; } } |
|||
다음글 | ci3 개발 환경.. 테스트 환경 구성에 대해서 (1) | ||
이전글 | 전체 페이지에 공통 데이터 전달방법이 있을까요? (2) | ||
한대승(불의회상)
/
2023/02/22 18:09:20 /
추천
0
파일 업로드 디렉토리의 퍼미션을 확인해 보세요.
|