本文目录一览:

在Yii中怎样把excel表格上传到数据库中

1.网站中商品一多,肯定需要一键导入功能,有现在成的第三方插件类PHPExcel,可以直接百度搜索进行下载。

2.里面所用到的文件夹主要是Classes这个文件夹。

3.把Classes文件夹改名为PHPExcel,复制整个文件夹到yii项目中的protected/extensions。

4.在定义的方法中需要用到PHPExcel的地方加上这两句代码

/*静用Yii自身的自动加载方法,使PHPExcel自带的autoload生效*/        Yii::$enableIncludePath=false;

     /*引入PHPExcel.php文件*/        Yii::import('application.extensions.PHPExcel.PHPExcel', 1);  

5.最后附上代码,此代码主要针对低版本的excel起效,对excel2007无效,不过大致步骤相同。

前台显示代码

htmlheadmeta http-equiv="Content-Type" content="text/html;charset=utf-8"/headbodyform action="./index.php?r=houtai/functions/daoru" method="POST" enctype="multipart/form-data"    input type="file" name="filename" /    input type="submit" name="submit" value="sub" //form/body/html

控制器代码

/*     * Excel一键导入功能     */

function actionDaoru(){                    /*是否表单提交*/            if(isset($_POST['submit'])){            /*上传excel文件是否成功*/          

$this-upload_file('filename');                        /*文件路径及名称*/            $file=Yii::app()-BasePath."/modules/houtai/data/excels/".$_FILES['filename']['name'];            $this-excelToArray($file);                                }                        $this-renderPartial('Daoru');    }

/*     * 表数据转化为数组 excel 低版本excel,不包括excel2007     */  

function ExcelToArray($file){            /*静用Yii自身的自动加载方法,使PHPExcel自带的autoload生效*/  

Yii::$enableIncludePath=false;                /*引入PHPExcel.php文件*/        Yii::import('application.extensions.PHPExcel.PHPExcel', 1);                            //echo $file;                /*创建对象,针对Excel2003*/        $objReader=PHPExcel_IOFactory::createReader('Excel5');            /*此属性不明,貌似设置为flase也可以*/      

$objReader-setReadDataOnly(true);            /*加载对象路径*/        $objPHPExcel=$objReader-load($file);            /*获取工作表*/        $objWorksheet=$objPHPExcel-getActiveSheet();    //获得当前活动的工作表,即打开默认显示的那张表        //

$objWorksheet=$objPHPExcel-getSheet(0);    //也可以这样获取,读取第一个表,参数0            /*得到总行数*/      

$highestRow=$objWorksheet-getHighestRow();            /*得到总列数*/        $highestColumn=$objWorksheet-getHighestColumn();        $highestColumnIndex=PHPExcel_Cell::columnIndexFromString($highestColumn);            /*取单元数据进数组*/      

$excelData=array();      

for($row=2;$row=$highestRow;++$row){            for($col=0;$col=$highestColumnIndex;++$col){              

$excelData[$row][]=$objWorksheet-getCellByColumnAndRow($col,$row)-getValue();            }        }                  

print_r($excelData);        exit;    }

最后显示的页面是这样子的,导入的excel表中的数据以数组形式显示。

yii2 phpexcel 导出csv需要怎么设置

在yii2项目的根目录下的composer.json中的require那里加入"phpoffice/phpexcel":"dev-develop"然后使用终端(windows使用cmd)进入yii2项目目录执行以下命令即可:composerupdate使用的话,就很简单,use导入phpexcel类,然后就可以使用

yii2 怎么安装和使用PHPExcel?

在yii2项目的根目录下的composer.json中的require那里加入

"phpoffice/phpexcel": "dev-develop"

然后使用终端(windows使用cmd)进入yii2项目目录

执行以下命令即可:

composer update

使用的话,就很简单,use导入phpexcel类,然后就可以使用了(具体使用请看文档)