ホームページ  >  記事  >  php教程  >  thinkphp3.2 と phpexcel のインポート

thinkphp3.2 と phpexcel のインポート

WBOY
WBOYオリジナル
2016-07-06 13:29:211187ブラウズ

thinkphp3.2とphpexcelをインポートする最も基本的な使い方
最も基本的なコードから始めましょう。これを理解すれば、残りは非常に簡単になります$file_name= './Upload/excel/123456.xls';<br> import("Org.Util.PHPExcel");<br> import("Org.Util.PHPExcel.IOFactory");<br> $objReader = PHPExcel_IOFactory::createReader('Excel5');<br> $objPHPExcel = $objReader->load($file_name,$encode='utf-8');<br> $sheet = $objPHPExcel->getSheet(0);<br> $highestRow = $sheet->getHighestRow() // 合計行数を取得します <br>; $highestColumn = $sheet->getHighestColumn() // 列の合計数を取得します<br>; <br> $s = $objPHPExcel->getActiveSheet()->getCell("A2")->getValue();テーブルの内容:
thinkphp3.2 と phpexcel のインポート
少し難しくして、最初にアイデアについて話しましょう。
1. Excel ファイルをアップロードし、そのアドレスを取得します
2. exlを処理する関数を書く、それだけです
コード例のデモ: public function Upload(){<br> $files = $_FILES['exl'];<br> <br> <br> // exl 形式、それ以外の場合は再アップロード<br> If($files['type'] !='application/vnd.ms-excel'){<br> $this->error('Excel ファイルではありません。再アップロードしてください'); }<br> <br> // アップロード<br> $upload = new ThinkUpload() // アップロード クラスをインスタンス化します<br>; $ upload-&gt; maxsize $ upload-&gt; exts $upload->rootPath $upload->savePath = 'excel/' // 添付ファイルのアップロード (サブ) ディレクトリを設定します <br>; //$upload->subName = array('date', 'Ym');<br> $upload->subName // ファイルをアップロードします <br> $info = $upload->upload();<br> <br> $file_name = $upload->rootPath.$info['exl']['savepath'].$info['exl']['savename'];<br> $exl = $this->import_exl($file_name);<br> <br> // exl テーブルの最初の行を削除します<br> unset($exl[0]);<br> <br> //空の配列をクリア<br> foreach($exl as $k=>$v){<br> if(empty($v)){<br> unset($exl[$k]);<br>                                                                                          };<br> //再注文<br>sort($exl);<br> <br> $count = count($exl);<br> // テストフォームが正常にインポートされた後、データ生成があるかどうか <br> if($count $this->error('有効なデータが検出されませんでした'); }<br> <br> // データの結合を開始します<br> foreach($exl as $k=>$v){<br> <br> $goods[$k]['goods_sn'] = $v;<br>                                          // データベースにクエリを実行します <br> $where['goods_sn'] = array('like','%'.$v.'%');<br> $res = M('goods')->where($where)->find();<br>                                          $goods[$k]['goods_name'] = $res['goods_name'];<br> $goods[$k]['goods_thumb'] = $res['goods_thumb'];<br> if($res){<br> 'は正常にマッチングされています $goods[$k]['is_match'] $f += 1;<br> }その他{<br>                                                                                                                                                               $goods[$k]['is_match'] $w += 1;<br> }<br> <br> }<br> // インスタンス化データ<br> $this->assign('goods',$goods);<br> //print_r($f);<br> <br> //統計結果<br> $total['count'] = $count;<br> $total['success'] = $f;<br> $total['error'] = $w;<br> $this->assign('total',$total);<br> <br> // Excel ファイルを削除します<br> リンク解除($file_name);<br> $this->display('info');<br>                                          }<br> /* アップロードされた exl データを処理します<br> * * $file_name ファイルパス<br> */<br> パブリック関数 import_exl($file_name){<br> //$file_name= './Upload/excel/123456.xls';<br> import("Org.Util.PHPExcel"); 。import("Org.Util.PHPExcel.IOFactory");<br> $objReader = PHPExcel_IOFactory::createReader('Excel5');<br> $objPHPExcel = $objReader->load($file_name,$encode='utf-8');<br> $sheet = $objPHPExcel->getSheet(0);<br> $highestRow = $sheet->getHighestRow() // 合計行数を取得します <br>; $highestColumn = $sheet->getHighestColumn() // 列の合計数を取得します<br>; <br> for($i=1;$i 使用 }<br> $ dataを返します。 } }<br> thinkphp3.2 と phpexcel を使用して画像を生成する完璧なケース<br> http://www.thinkphp.cn/code/2112.html Yunqi Conference 北京駅:今回はアリババの技術専門家が現場に登場するのは珍しいですね。 !

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。