> 백엔드 개발 > PHP 튜토리얼 > phpExcel은 Excel 파일을 읽습니다.

phpExcel은 Excel 파일을 읽습니다.

巴扎黑
풀어 주다: 2016-11-22 16:56:32
원래의
2227명이 탐색했습니다.

이전 블로그 게시물에서는 PHPExcel에서 내보낸 Excel 파일에 대해 간략하게 요약했습니다. 이제 Excel을 읽는 방법을 다음과 같이 요약하겠습니다. (데이터의 양이 많지 않은 경우에는 이 방법을 이용하여 웹을 이용하여 직접 읽을 수 있습니다. 데이터의 양이 매우 큰 경우에는 웹에서 업로드 기능만 수행하고 읽기 및 처리만 하는 것을 권장합니다. PHPExcel은 여전히 ​​상대적으로 시간이 많이 걸립니다. )

예제 코드:

//首先导入PHPExcel
require_once 'PHPExcel.php';
$filePath = "test.xlsx";
//建立reader对象
$PHPReader = new PHPExcel_Reader_Excel2007();
if(!$PHPReader->canRead($filePath)){
    $PHPReader = new PHPExcel_Reader_Excel5();
    if(!$PHPReader->canRead($filePath)){
        echo 'no Excel';
        return ;
    }
}
//建立excel对象,此时你即可以通过excel对象读取文件,也可以通过它写入文件
$PHPExcel = $PHPReader->load($filePath);
/**读取excel文件中的第一个工作表*/
$currentSheet = $PHPExcel->getSheet(0);
/**取得最大的列号*/
$allColumn = $currentSheet->getHighestColumn();
/**取得一共有多少行*/
$allRow = $currentSheet->getHighestRow();
//循环读取每个单元格的内容。注意行从1开始,列从A开始
for($rowIndex=1;$rowIndex<=$allRow;$rowIndex++){
    for($colIndex=&#39;A&#39;;$colIndex<=$allColumn;$colIndex++){
        $addr = $colIndex.$rowIndex;
$cell = $currentSheet->getCell($addr)->getValue();
        if($cell instanceof PHPExcel_RichText)     //富文本转换字符串
$cell = $cell->__toString();
            
        echo $cell;
    
    }
}
로그인 후 복사

여기서 설명해야 할 사항은 다음과 같습니다. 위 주석의 "서식 있는 텍스트 변환 문자열"입니다.

PHPExcel이 EXCEl 파일을 읽을 때 셀의 내용에 두 개의 글꼴이 있으면 서식 있는 텍스트 개체를 읽습니다.

예: 셀에 내용이 있습니다: "Test 1" , 전반부의 "test" 글꼴은 Song Dynamise, 후반부의 "1" 글꼴은 Calibri 입니다. 이때

$cell = $sheet->getCell($addr 을 사용하세요. )-> getValue();

셀의 값을 가져옵니다. 그리고 인쇄:

PHPExcel_RichText Object(
[_richTextElements:private] => Array
 (
           [0] => PHPExcel_RichText_TextElement Object ([_text:private] => 测试)
                     [1] => PHPExcel_RichText_Run Object
                     (
                     [_font:private] => PHPExcel_Style_Font Object
                               (
                                [_name:private] => Calibri
                                        [_size:private] => 11
                                        [_bold:private] => 
                                        [_italic:private] => 
                                        [_superScript:private] => 
                                        [_subScript:private] => 
                                        [_underline:private] => none
                                        [_strikethrough:private] => 
                                        [_color:private] => PHPExcel_Style_Color Object
                                        (
                                            [_argb:private] => FF000000
                                            [_isSupervisor:private] => 
                                            [_parent:private] => 
                                            [_parentPropertyName:private] => 
                                        )
                                        [_parentPropertyName:private] => 
                                        [_isSupervisor:private] => 
                                        [_parent:private] => 
                                        [colorIndex] => 8
                                    )
                                    [_text:private] => 1
                                )
                        )
                )
로그인 후 복사

이러한 셀의 텍스트 내용을 직접 읽을 수 없다는 것을 알 수 있습니다. (참고: 여기의 서식 있는 텍스트는 제가 직접 번역한 것이므로 올바른지 모르겠습니다.)

또한 셀을 읽는 함수는 다음과 같습니다.

//열은 0부터 시작하고 행은 1부터 시작합니다

$currentSheet ->getCellByColumnAndRow($colIndex, $ rowIndex)->getValue();


관련 라벨:
php
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿