多くの記事で phpExcel を使用して Excel データをインポートおよびエクスポートすることが述べられていますが、ほとんどの記事は似たようなもの、または転載されており、いくつかの問題があるでしょう。 以下は、phpExcel の使用ルーチンを研究してまとめた使用方法です。 . 次へ トピックに直接移動します。
まず最初に言っておきますが、私のこのルーチンは Thinkphp 開発フレームワークで使用されており、同じ方法を他のフレームワークで使用すると、多くの人が Excel のインポートとエクスポートを正しく実装できない可能性があります。基本的に phpExcel のコア クラスの参照パスが間違っています。問題がある場合は、Lu Jin が正しく参照されているかどうかを全員でテストする必要があります。
(1) Excelにインポート
まず、フロント HTML ページにファイルをアップロードします。例:
* アップロードされた Excel データを処理してプログラミング データを生成します。この関数は、以下の 3 番目のステップの ExcelToArray クラスに含まれます
注: 3 番目のステップ クラスの読み取り関数は、Excel を配列に変換して $res に返し、データベースに書き込むためにここで呼び出されます
*/
$res = Service ( 'ExcelToArray' )->read ( $savePath . $file_name );
/*
with with M with D メソッドを thinkphp に追加するには、次のコードを追加しますか?
//spl_autoload_register ( array ('Think', 'autoload' ) );
/*生成された配列をデータベースに書き込みます*/
{
$v [0];
$data ['パスワード'] = sha1 ('111111') ;
$data ['uname'] = $v [3];
}
パブリック関数 __construct() {
/*phpExcel コア クラスをインポートする 注: パスが私のものと異なる場合、直接コピーすることはできません*/
include_once('./Excel/PHPExcel.php');
}
/**
* Excel の読み取り $filename パス ファイル名 $encode 戻りデータのエンコーディングのデフォルトは utf8 です
※以下は基本的に改変しないでください
*/
パブリック関数 read($filename,$encode='utf-8'){
$objReader = PHPExcel_IOFactory::createReader('Excel5');
$objReader->setReadDataOnly(true);$objPHPExcel = $objReader->load($filename);
$objWorksheet = $objPHPExcel->getActiveSheet();$highestRow = $objWorksheet->getHighestRow();
$highestColumn = $objWorksheet->getHighestColumn();$exc elData = array();のために($ row = 1; $ row< = $ highestrow; $ row ++){
objworksheet-> getcellbycolumnandrow($ col、$ row) - > getValue(); }
}
4 番目に、上記はインポートされたすべてのコンテンツであり、最後に phpExcel パッケージが添付されます。
(2) Excel エクスポート (インポートよりはるかに簡単)
まず、Excel を生成するためにデータベース内のデータを見つけます。次のようなものです。
2 番目に、ExcelToArrary クラスを使用して phpExcel を参照し、データを処理します
コードをコピーします コードは次のとおりです:パブリック関数 __construct() {
H/*Phpexcel のコア カテゴリをインポートします。 注: あなたのパスは私と同じではありません。直接コピーすることはできません*/ include_once ('./ Excel/Phpexcel.php');
/* Excel 関数をエクスポート*/
public function Push($data,$name='Excel'){
error_reporting(E_ALL);
date_default_timezone_set('ヨーロッパ/ロンドン');
/*以下は作者、タイトルなどの設定です*/
"The Turning Sun")
-& gt;エクスポート")
-& gt; setdescript ("バックアップ データ")
-& gt; setKeywords ("Excel")
カテゴリ ( "結果ファイル");
/*以下は Excel でデータを処理し、基本的にはこのステップ以外は変更しないでください。
$ num = $ k+1;
的 // Excel の列 A、UID は、次のタイプの配列を検出します。 setCellValue ('a'. $ Num, $ v ['uID'])
-& gt; (setCellValValue( 'b'。$ num、$ v ['email'])
H $ Objphpexcel-& GT()-& GT; YPE: Application/VND.MS-EXCEL '); name。 '。xls "');
ヘッダー( 'キャッシュコントロール:max-age = 0');
第三に、上記はエクスポートされたすべてのコンテンツであり、最後に phpExcel パッケージが添付されます。