PHPExcel(2)インポート関数

WBOY
リリース: 2016-06-23 13:34:43
オリジナル
1060 人が閲覧しました

前のセクションでは、PHPExcel のエクスポート機能について学習しました。したがって、このセクションでは、PHPExcel を使用して Excel ファイルからデータベースにデータをインポートする方法を学びましょう。
PHPExcel の使用方法は前のセクションで説明したものと同じです: http://blog.csdn.net/liuruiqun/article/details/45667789

1. まずアプリケーションをダウンロードします。Github リンクは次のとおりです: https:// github.com/PHPOffice /PHPExcel

2. protected/extensions パスの下に PHPexcel ディレクトリを作成し、ダウンロードした PHPExcel ファイルを解凍します。

3. 解凍したクラス ディレクトリの内容をすべて protected/extensions/PHPexcel ディレクトリにコピーします

4. コントローラー ファイル XXX.Controller.php に、最初に関連ファイルを導入します

<?phpYii::import('application.extensions.*');require_once('PHPExcel/PHPExcel.php');require_once 'PHPExcel/PHPExcel/Writer/Excel5.php'; // 用于其他低版本xlsrequire_once 'PHPExcel/PHPExcel/Writer/Excel2007.php'; // 用于 excel-2007 格式...
ログイン後にコピー



5. メソッドのアップロードを書き込みます(以下は私自身の開発過程でのコードの一部です)

public function actionUpload()    {        spl_autoload_unregister(array('YiiBase', 'autoload'));        $phpExcelPath = Yii::getPathOfAlias('application.extensions.PHPExcel.PHPExcel');        include($phpExcelPath . DIRECTORY_SEPARATOR . 'IOFactory.php');        spl_autoload_register(array('YiiBase', 'autoload')); //前提工作        if (isset($_POST['submit'])) {            $file_temp = CUploadedFile::getInstanceByName('files');            $file1 = $file_temp->getName();            $file = iconv("utf-8", "gb2312", $file1); //中文乱码            $file_dir = YiiBase::getPathOfAlias('webroot') . '/assets/upload/subject/' . $file;            $file_temp->saveAs($file_dir, true);            $objReader = PHPExcel_IOFactory::createReader('Excel5'); //use excel2007 for 2007 format            $objPHPExcel = $objReader->load($file_dir);            $sheet = $objPHPExcel->getSheet(0);            $total_line = $sheet->getHighestRow(); // 取得总行数            //$total_column = $sheet->getHighestColumn(); // 取得总列数            for ($row = 2; $row <= $total_line; $row++) {                $a = $objPHPExcel->getActiveSheet()->getCell("A" . $row)->getValue(); //获取A列的值(ID)                $b = $objPHPExcel->getActiveSheet()->getCell("B" . $row)->getValue(); //获取B列的值(ID)                $model = new Subject;                $model->name = $a;                $model->credit = $b;                $model->save();            }            $this->redirect(array('admin'));        }        $this->render('upload');    }
ログイン後にコピー



コード実装関数:
Excel ファイルを /assets/upload/subject/ ディレクトリにアップロードし、列 A と列の値を追加しますExcelファイルのB列の値がデータテーブルSubjectのnameとcreditにそれぞれインポートされます。
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート