PHP读取Excel数据写入数据库(包含图片和文字)

public function test(){
        $exts = ‘xlsx‘;
        //导入PHPExcel类库,因为PHPExcel没有用命名空间,只能inport导入
        import("Org.Util.PHPExcel");//导入Excel类  我这里是ThinkPHP框架写法  根据自己的框架修改

        $fileName = "tel.xls";//excel文件路径

        $objReader = \PHPExcel_IOFactory::createReader(‘Excel5‘);
        $objPHPExcel = $objReader->load($fileName,$encode=‘utf-8‘);
        $drawing = new \PHPExcel_Writer_Excel2007_Drawing();

        $drawingHashTable = new \PHPExcel_HashTable();
        $drawingHashTable->addFromSource($drawing->allDrawings($objPHPExcel));
        for ($i = 0; $i < $drawingHashTable->count(); ++$i)
        {
            $memoryDrawing = $drawingHashTable->getByIndex($i);
            if ($memoryDrawing instanceof \PHPExcel_Worksheet_MemoryDrawing)
            {
                $filename = ‘./Public/‘ . $memoryDrawing->getCoordinates() . ‘_‘ . $memoryDrawing->getHashCode() . ‘.jpg‘;
                // 将图片存到指定的目录
                imagejpeg($memoryDrawing->getImageResource(), $filename);
                // 获得该图片所在的单元格
                $cell = $memoryDrawing->getWorksheet()->getCell($memoryDrawing->getCoordinates());
                // 将该单元格的值设置为单元格的文本加上图片的 img 标签
                $cell->setValue($cell->getValue() . $filename);
            }
        }
        $sheet = $objPHPExcel->getSheet(0);
        $highestRow = $sheet->getHighestRow(); // 取得总行数
        $highestColumn = $sheet->getHighestColumn(); // 取得总列数
        for($i=2;$i<=$highestRow;$i++)
        {
            $data[$i][‘truename‘] = $objPHPExcel->getActiveSheet()->getCell("A".$i)->getValue();
            $data[$i][‘account‘]= $objPHPExcel->getActiveSheet()->getCell("B".$i)->getValue();
            $data[$i][‘image‘][] = $objPHPExcel->getActiveSheet()->getCell("C".$i)->getValue();
            $data[$i][‘image‘][] = $objPHPExcel->getActiveSheet()->getCell("D".$i)->getValue();
            $data[$i][‘image‘][] = $objPHPExcel->getActiveSheet()->getCell("E".$i)->getValue();
        }
        print_r($data);die;
    }
时间: 2024-10-11 11:00:00

PHP读取Excel数据写入数据库(包含图片和文字)的相关文章

读取excel数据到数据库里

用的是jxlJar /** * 读取excel数据到数据库里 */ private void readExcelToDB() { new Thread(new Runnable() { @Override public void run() { try { String filePath = "/sdcard/"; String fileName = "307322.xlsx"; File file = new File(filePath, fileName); F

读取Excel文件写入数据库 Mybatis , POI , JXL

废话不多说,直接上代码结构图 所用到的lib包 Students 实体类 package com.test.model; public class Students { private int id; private String username; private int age; private int salary; public int getId() { return id; } public void setId(int id) { this.id = id; } public St

PHP读取CSV数据写入数据库

/*读取csv文件*/ public function testCsv(){ $fileName = "tel.csv"; $fp=fopen($fileName,"r"); $data = fgetcsv($fp); $count = 1; $result = array(); while(!feof($fp) && $data = fgetcsv($fp)) { if($count>1 && !empty($data)) {

NPOI操作excel——利用反射机制,NPOI读取excel数据准确映射到数据库字段

> 其实需求很明确,就是一大堆不一样的excel,每张excel对应数据库的一张表,我们需要提供用户上传excel,我们解析数据入库的功能实现. 那么,这就涉及到一个问题:我们可以读出excel的表头,但是怎么知道每个表头具体对应数据库里面的字段呢? 博主经过一段时间的思考与构思,想到一法:现在的情况是我们有excel表A,对应数据库表B,但是A与B具体属性字段的映射关系我们不知.那我们是不是可以有一个A到B的映射文件C呢? 我想,说到这,大家就很明了了... 第一步:为每张excel创建一个与

Java -&gt; 把Excel表格中的数据写入数据库与从数据库中读出到本地 (未完善)

写入: private void insertFile(HttpServletRequest request, HttpServletResponse response) throws IOException { String path_member = request.getParameter("path_member"); List list = this.insert("f:/tmp001.xls", "gs_sale_members");

java的poi技术读取Excel数据到MySQL

这篇blog是介绍java中的poi技术读取Excel数据,然后保存到MySQL数据中. 你也可以在 : java的poi技术读取和导入Excel了解到写入Excel的方法信息 使用JXL技术可以在 :java的jxl技术导入Excel  项目结构: Excel中的测试数据: 数据库结构: 对应的SQL: 1 CREATE TABLE `student_info` ( 2 `id` int(11) NOT NULL AUTO_INCREMENT, 3 `no` varchar(20) DEFAU

[Asp.net]常见数据导入Excel,Excel数据导入数据库解决方案,总有一款适合你!

引言 项目中常用到将数据导入Excel,将Excel中的数据导入数据库的功能,曾经也查找过相关的内容,将曾经用过的方案总结一下. 方案一 NPOI NPOI 是 POI 项目的 .NET 版本.POI是一个开源的Java读写Excel.WORD等微软OLE2组件文档的项目.使用 NPOI 你就可以在没有安装 Office 或者相应环境的机器上对 WORD/EXCEL 文档进行读写.NPOI是构建在POI 3.x版本之上的,它可以在没有安装Office的情况下对Word/Excel文档进行读写操作

机器学习之数据预处理,Pandas读取excel数据

Python读写excel的工具库很多,比如最耳熟能详的xlrd.xlwt,xlutils,openpyxl等.其中xlrd和xlwt库通常配合使用,一个用于读,一个用于写excel.xlutils结合xlrd可以达到修改excel文件目的.openpyxl可以对excel文件同时进行读写操作. 而说到数据预处理,pandas就体现除了它的强大之处,并且它还支持可读写多种文档格式,其中就包括对excel的读写.本文重点就是介绍pandas对excel数据集的预处理. 机器学习常用的模型对数据输入

asp.net读取Excel数据

先通过控件FileUpload获取excel文件路径 protected void btnReadExcelFromFileUpload_Click(object sender, EventArgs e) { if (fupExcel.PostedFile.ContentLength > 0) { //获取全路径 string fullFileName = fupExcel.PostedFile.FileName.ToString(); //获取文件名 string fileName = fup