php导入Excel进mysql数据库

时间:2021-12-02 06:38:49
<?php
error_reporting(E_ALL ^ E_NOTICE);

$img = base64_decode($base64);
$a = file_put_contents('./test.jpg', $img);//返回的是字节数
print_r($a);
require_once 'sdk/PHPExcel.php';

///**对excel里的日期进行格式转化*/
//function GetData($val){
//    $jd = GregorianToJD(1, 1, 1970);
//    $gregorian = JDToGregorian($jd+intval($val)-25569);
//    return $gregorian;/**显示格式为 “月/日/年” */
//}

$filePath = './excel/5a4b301c7124e.xls';

//var_dump(file_exists($filePath));
$PHPExcel = new PHPExcel();

/**默认用excel2007读取excel,若格式不对,则用之前的版本进行读取*/
$PHPReader = new PHPExcel_Reader_Excel2007();
if(!$PHPReader->canRead($filePath)){
    $PHPReader = new PHPExcel_Reader_Excel5();
    if(!$PHPReader->canRead($filePath)){
        echo 'no Excel';
        return ;
    }
}

$PHPExcel = $PHPReader->load($filePath);
/**读取excel文件中的第一个工作表*/
$currentSheet = $PHPExcel->getSheet(0);
/**取得最大的列号*/
$allColumn = $currentSheet->getHighestColumn();
/**取得一共有多少行*/
$allRow = $currentSheet->getHighestRow();
/**从第二行开始输出,因为excel表中第一行为列名*/

for($currentRow = 2;$currentRow <= $allRow;$currentRow++){
    /**从第A列开始输出*/
    for($currentColumn= 'A';$currentColumn<= $allColumn; $currentColumn++){
        $val = $currentSheet->getCellByColumnAndRow(ord($currentColumn) - 65,$currentRow)->getValue();/**ord()将字符转为十进制数*/
        if($currentColumn == 'A')
        {
//            echo GetData($val)."\t";
        }else{
//echo $val;
            /**如果输出汉字有乱码,则需将输出内容用iconv函数进行编码转换,如下将gb2312编码转为utf-8编码输出*/
//            echo iconv('utf-8','gb2312', $val)."\t";
            $infos[$currentColumn]=iconv('utf-8','gb2312', $val);
        }
    }
//    echo "</br>";
    $item=array();
    $item['title']=$infos['C'];
    $item['barcode']=$infos['D'];
    $item['default_image_id']=$infos['F'];
    $item['store']=$infos['H'];
    $item['price']=$infos['I'];
    $item['offline_price']=$infos['J'];
    $item['shop_id']=$infos['K'];
    $item['desc']=$infos['L'];
    var_dump($item);
    exit();

}
var_dump($info);
echo "\n";
?>