首页 >每日编程 >PHP知识 > 正文

PHPExcel数据导入(图文)

转载2020-01-02 14:33:5138064

PHPExcel是一个PHP类库,用来帮助我们简单、高效实现从Excel读取Excel的数据和导出数据到Excel。

相关视频课程:《PHP快速操控Excel之PhpSpreadsheet

首先下载压缩包:

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

解压后如下:

在根目录创建一个test.php用来读取excel的内容 excel文件的内容如下:

然后test.php代码如下:

<?php
header("content-type:text/html;charset=utf8");
include './Classes/PHPExcel/IOFactory.php';//引入PHPExcel类
$inputFileName = './test.xls';//读取的excel文件
date_default_timezone_set('PRC');
// 读取excel文件
try {
    $inputFileType = PHPExcel_IOFactory::identify($inputFileName);
    $objReader = PHPExcel_IOFactory::createReader($inputFileType);
    $objPHPExcel = $objReader->load($inputFileName);
} catch(Exception $e) {
    die('加载文件发生错误:"'.pathinfo($inputFileName,PATHINFO_BASENAME).'": '.$e->getMessage());
}
$sheet = $objPHPExcel->getSheet(0);
$data=$sheet->toArray();//该方法读取不到图片 图片需单独处理
$imageFilePath='./images/'.date('Y-m-d').'/';//图片在本地存储的路径
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 'image/jpg':
            $imageFileName.='.jpg';
            imagejpeg($img->getImageResource(),$imageFilePath.$imageFileName);
            break;
        case 'image/gif':
            $imageFileName.='.gif';
            imagegif($img->getImageResource(),$imageFilePath.$imageFileName);
            break;
        case 'image/png':
            $imageFileName.='.png';
            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;
}

以上代码只是处理图片,得到图片路径插入到数组中,如需数据入库,可循环insert,自行处理,打印结果如下:

以上就是PHPExcel数据导入(图文)的详细内容,更多请关注php中文网其它相关文章!

php中文网最新课程二维码
  • 相关标签:PHPExcel
  • 本文转载于:cnblogs,如有侵犯,请联系a@php.cn删除
  • 相关文章

    相关视频


    网友评论

    文明上网理性发言,请遵守 新闻评论服务协议

    我要评论条评论
    无恙.
  • 无恙.· 2020-02-03 23:10:373楼
  • daka 很有用

  • Unique PHP
  • Unique PHP· 2019-09-02 11:33:222楼
  • 滴滴滴,打卡!

  • YHF
  • YHF· 2019-07-18 15:21:211楼
  • 每天学习,打卡!

  • phpexcel致内存溢出的解决方法有:一、将单元格序列化后保存在内存中;二、将单元格序列化后再进行“Gzip”压缩,然后保存到内存中;三、缓存到临时的磁盘件中。
    phpmyadmin的方法:首先打开phpmyadmin,输库管理账号密码并点击“执行”;然后选择要库;接着点击test库选择“”;最后点击“选择件”选择要的sql
    表:先选择库,然后在航栏中点击“”的按钮,进的页面,然后点击“选择件”按钮,找到.sql件的位置,件格式为SQL,点击“执行”按钮,就可以将库中。
    件到“phpmyadmin”的方法是:首先输账号和密码进首页,然后选择一个需要件的库,也可以创建一个新的库,接着点击菜单栏中的【】,然后选择需要的“sql”件,点击
    phpmyadmin的方法:1、打开phpMyadmin输账号和密码,进首页。2、选择一个库,或先创建相应的库。3、点击菜单栏的,选择要的sql件,点击执行即可。
    使用phpmyadmin库的方法是:1、首先点击要将到的库;2、接着点击【】,点击【浏览件】,选择需要的SQL件,最后点击【执行】,出现提示信息和相应的显示即表示完成
    phpmyadmin20M件的方法:在php.ini件中修改upload_max_filesize、post_max_size的值大于20M,然后将file_uploads的值改为on即可直接
    OracleExcel的方法:1、打开“ODBC Importer”;2、将“User/System DSN”选择“Excel Files”;3、接着点击“Connect”将表格;4、点击“
    exceltxt中的的方法是:1、点击菜单栏中的【】选项,接着点击【自本】选项;2、在中勾选【固定宽度】选项;3、设置格式为【常规】;4、设置的放置位置为【现有工作表】
    phpmyadmin中无法件的解决办法:首先使用本编辑器editplus打开sql件;然后将头部信息全部删除,只保留库表信息;最后用phpmyadmin的sql语句进行即可。
    phpmyadmin批量excel到mysql的方法是:1、首先保存excel为csv档;2、然后新建表,新建字段;3、最后点击【】,选择格式为【LOAD DATA】,选择csv
    到phpmyadmin中的方法:1、打开phpMyadmin输账号和密码,进首页。2、选择或创建一个库。3、点击菜单栏的,选择要库点击执行即可。
    phpMyAdmin无法大的件的解决办法:首先修改【php.ini】中的【upload_max_filesize】;然后修改相关的配置件;接着让修改的值要稍大于的sql件;最后重启
    phpMyAdmin库的方法:1、进phpMyAdmin。2、选择要出的库。3、点击位于页面顶部的Export选项卡,选择出的方法。
    DEDE批量excel到后台的方法:首先在“excelinsert.php”里加一个“header”头的编码;然后通过件“excelinert”插excel里面的名称为“test1”的里面的即可
    R语言excel的方法:首先使用install.packages("xlsx")安装xlsx;然后使用library(xlsx)加载包;最后使用read.xlsx2(file
    库太大无法phpmyadmin解决方法:找到config.sample.inc.php配置件,将$cfs['uploadir']=''与$cfs['savedir']=''的值改为ipload
    调整phpmyadmin件大小限制的方法是:1、首先打开【php.ini】配置件;2、修改上传件最大值为自己想要的大小;3、修改通过【POST】方法可以接收的信息最大量为需要的值;4、开启
    oracle库报错的解决办法:首先找到计算机右键选择属性,并点击高级系统设置;然后选择环境变量,并添加环境变量;最后显示成功连通即可。
    “java”中向“mysql”库插时出现乱码的解决方法是:1、检查库的默认字符集和对应“database”的字符集;2、将整个库的默认字符集设置成“utf-8”;3、指定“JDBC

    专题推荐

    推荐视频教程
  • PHP经典算法面试题PHP经典算法面试题
  • php7实战开发cms内容管理系统php7实战开发cms内容管理系统
  • ThinkPHP6.0极速入门(视频教程)ThinkPHP6.0极速入门(视频教程)
  • ThinkPHP6.0公益直播课ThinkPHP6.0公益直播课
  • 视频教程分类