Heim >tägliche Programmierung >PHP-Kenntnisse >PHPExcel-Datenimport (Grafiken und Text)

PHPExcel-Datenimport (Grafiken und Text)

藏色散人
藏色散人nach vorne
2019-07-06 10:40:3118049Durchsuche

PHPExcel-Datenimport (Grafiken und Text)

PHPExcel ist eine PHP-Klassenbibliothek, die uns hilft, Excel-Daten einfach und effizient aus Excel zu lesen und Daten nach Excel zu exportieren.

Verwandte Videokurse: „PhpSpreadsheet zur schnellen Steuerung von Excel mit PHP

Laden Sie zunächst das komprimierte Paket herunter:

http://www.php.cn/xiazai/leiku/1491

Nach der Dekomprimierung ist es wie folgt:

Erstellen Sie einen Test im Stammverzeichnis. Der Inhalt der Excel-Datei lautet wie folgt:

Dann lautet der test.php-Code wie folgt:

<?php
header("content-type:text/html;charset=utf8");
include &#39;./Classes/PHPExcel/IOFactory.php&#39;;//引入PHPExcel类
$inputFileName = &#39;./test.xls&#39;;//读取的excel文件
date_default_timezone_set(&#39;PRC&#39;);
// 读取excel文件
try {
    $inputFileType = PHPExcel_IOFactory::identify($inputFileName);
    $objReader = PHPExcel_IOFactory::createReader($inputFileType);
    $objPHPExcel = $objReader->load($inputFileName);
} catch(Exception $e) {
    die(&#39;加载文件发生错误:"&#39;.pathinfo($inputFileName,PATHINFO_BASENAME).&#39;": &#39;.$e->getMessage());
}
$sheet = $objPHPExcel->getSheet(0);
$data=$sheet->toArray();//该方法读取不到图片 图片需单独处理
$imageFilePath=&#39;./images/&#39;.date(&#39;Y-m-d&#39;).&#39;/&#39;;//图片在本地存储的路径
if (! file_exists ( $imageFilePath )) {
    mkdir("$imageFilePath", 0777, true);
}
//处理图片
foreach($sheet->getDrawingCollection() as $img) {
    list($startColumn,$startRow)= PHPExcel_Cell::coordinateFromString($img->getCoordinates());//获取图片所在行和列
    $imageFileName = $img->getCoordinates() . mt_rand(100, 999);
    switch($img->getMimeType()) {
        case &#39;image/jpg&#39;:
            $imageFileName.=&#39;.jpg&#39;;
            imagejpeg($img->getImageResource(),$imageFilePath.$imageFileName);
            break;
        case &#39;image/gif&#39;:
            $imageFileName.=&#39;.gif&#39;;
            imagegif($img->getImageResource(),$imageFilePath.$imageFileName);
            break;
        case &#39;image/png&#39;:
            $imageFileName.=&#39;.png&#39;;
            imagepng($img->getImageResource(),$imageFilePath.$imageFileName);
            break;
    }
    $startColumn = ABC2decimal($startColumn);//由于图片所在位置的列号为字母,转化为数字
    $data[$startRow-1][$startColumn]=$imageFilePath.$imageFileName;//把图片插入到数组中

}
print_r($data);die;
function ABC2decimal($abc){
    $ten = 0;
    $len = strlen($abc);
    for($i=1;$i<=$len;$i++){
        $char = substr($abc,0-$i,1);//反向获取单个字符

        $int = ord($char);
        $ten += ($int-65)*pow(26,$i-1);
    }
    return $ten;
}

Der obige Code verarbeitet einfach das Bild, ruft den Bildpfad ab und fügt ihn in das Array ein. Wenn Sie die Daten in der Datenbank speichern müssen, können Sie die Einfügung schleifen und verarbeiten Sie es selbst. Das Druckergebnis ist wie folgt:

Das obige ist der detaillierte Inhalt vonPHPExcel-Datenimport (Grafiken und Text). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:cnblogs.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen
Vorheriger Artikel:Rekursiver PHP-Algorithmus (4)Nächster Artikel:Rekursiver PHP-Algorithmus (4)