제가 php에서 excel 을 사용하려 PHPExcel을 사용하는데요 정보
제가 php에서 excel 을 사용하려 PHPExcel을 사용하는데요본문
http://www.codeplex.com/PHPExcel
엑셀 파일 내용중
16개 열(A~P)
5000개 정도의 행(1~5000)
까지의 값 만 가져와집니다.
이것이
PHPExcel 에서 제한을 걸어 놓은 걸까요 아니면
php 자체에서 너무 많은 데이터를 가져올때 제한이 걸리는 걸까요?
조언 부탁드립니다.
엑셀 파일 내용중
16개 열(A~P)
5000개 정도의 행(1~5000)
까지의 값 만 가져와집니다.
이것이
PHPExcel 에서 제한을 걸어 놓은 걸까요 아니면
php 자체에서 너무 많은 데이터를 가져올때 제한이 걸리는 걸까요?
조언 부탁드립니다.
댓글 전체
제한 없는걸로 알고있는데...
소스를 올려보세요 혹시 모르니~
소스를 올려보세요 혹시 모르니~
include "./_common.php";
include "./Classes/PHPExcel.php";
//-- 읽을 범위 필터 설정 (아래는 A열만 읽어오도록 설정함 => 속도를 중가시키기 위해)
class MyReadFilter implements PHPExcel_Reader_IReadFilter
{
public function readCell($column, $row, $worksheetName = '') {
// Read rows 1 to 7 and columns A to E only
if (in_array($column,range('A','P'))) {
return true;
}
return false;
}
}
$sheetPage = 4;
$filterSubset = new MyReadFilter();
$upfile_path = $_SERVER["DOCUMENT_ROOT"]."/yangs2/temp/PP/dd3.xlsx";
$path = pathinfo($upfile_path); //파일에 대한 정보를 얻음
$ext = strtolower($path['extension']); //확장자를 연관배열에서 가져옴, 소문자 변환
//파일 타입 설정 (확자자에 따른 구분)
$inputFileType = 'Excel2007';
if($ext == "xls") {
$inputFileType = 'Excel5';
}
//엑셀리더 초기화
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
//데이터만 읽기(서식을 모두 무시해서 속도 증가 시킴)
$objReader->setReadDataOnly(true);
//범위 지정(위에 작성한 범위필터 적용)
$objReader->setReadFilter($filterSubset);
//업로드된 엑셀 파일 읽기
$objPHPExcel = $objReader->load($upfile_path);
// for( $j_count = 0 ; $j_count < $sheetPage; $j_count++ ) {
// echo $j_count;
//첫번째 시트로 고정
$objPHPExcel->setActiveSheetIndex(0);
//고정된 시트 로드
$objWorksheet = $objPHPExcel->getActiveSheet();
// print_r($objWorksheet);
// }
echo "<br>";
echo 'aaaaaaaaaaaaa';
이렇게 구성되어 있습니다 ㅠ
include "./Classes/PHPExcel.php";
//-- 읽을 범위 필터 설정 (아래는 A열만 읽어오도록 설정함 => 속도를 중가시키기 위해)
class MyReadFilter implements PHPExcel_Reader_IReadFilter
{
public function readCell($column, $row, $worksheetName = '') {
// Read rows 1 to 7 and columns A to E only
if (in_array($column,range('A','P'))) {
return true;
}
return false;
}
}
$sheetPage = 4;
$filterSubset = new MyReadFilter();
$upfile_path = $_SERVER["DOCUMENT_ROOT"]."/yangs2/temp/PP/dd3.xlsx";
$path = pathinfo($upfile_path); //파일에 대한 정보를 얻음
$ext = strtolower($path['extension']); //확장자를 연관배열에서 가져옴, 소문자 변환
//파일 타입 설정 (확자자에 따른 구분)
$inputFileType = 'Excel2007';
if($ext == "xls") {
$inputFileType = 'Excel5';
}
//엑셀리더 초기화
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
//데이터만 읽기(서식을 모두 무시해서 속도 증가 시킴)
$objReader->setReadDataOnly(true);
//범위 지정(위에 작성한 범위필터 적용)
$objReader->setReadFilter($filterSubset);
//업로드된 엑셀 파일 읽기
$objPHPExcel = $objReader->load($upfile_path);
// for( $j_count = 0 ; $j_count < $sheetPage; $j_count++ ) {
// echo $j_count;
//첫번째 시트로 고정
$objPHPExcel->setActiveSheetIndex(0);
//고정된 시트 로드
$objWorksheet = $objPHPExcel->getActiveSheet();
// print_r($objWorksheet);
// }
echo "<br>";
echo 'aaaaaaaaaaaaa';
이렇게 구성되어 있습니다 ㅠ
자답입니다.
메모리 문제였습니다...
메모리 제한 풀면 됩니다..
너무 많은 값을 로드해서 안되는 것이었습니다 ㅠ
메모리 문제였습니다...
메모리 제한 풀면 됩니다..
너무 많은 값을 로드해서 안되는 것이었습니다 ㅠ