ホームページ  >  記事  >  バックエンド開発  >  phpExcelReader を使用して大量のデータをインポートできない

phpExcelReader を使用して大量のデータをインポートできない

WBOY
WBOYオリジナル
2016-06-23 13:47:43852ブラウズ

インターネット上で例を見つけました。 phpexcel を使用して Excel ファイルをデータベースにインポートできますが、データが 122 を超えると、たとえば Excel ファイルに 123 個のデータが存在すると、インポートできなくなります。皆さんにご覧いただけるようにコードを投稿します。
require_once '../phpExcelReader/Excel/reader.php'
$data = new Spreadsheet_Excel_Reader();
$data->setOutputEncoding('GB2312');
$data ->read('../lfx.xls');
}

for ($i = 1; $i sheets[0]['numRows']; $ i++)
{

for ($j = 1; $j sheets[0]['numCols']; $j++)
{

echo $data->sheets[0] ['cells '][$i][$j];
}
}

Excel ファイルが 123 未満の場合は、Web ページ上のすべてのレコードを出力できますが、それ以上の場合は、 123までは空白になるのでインポートする必要があります 5,000件以上のデータが困っています。


phpExcelReader と私の Excel を添付します
皆さん、ありがとうございます!


ディスカッションに返信(解決策)

次に、バッチでインポートしてみます。一度に 100 または 122 アイテム。

そうですね、主な理由は、毎回インポートされるデータの数を判断することができないことです。次回インポートされるデータが 10 個だけになる可能性もあれば、8,000 個のデータがインポートされる可能性もあります。どうすればいいのかわかりません

それから、バッチでインポートしてみてください。一度に 100 または 122 アイテム。

インポートされたデータは中国語ですか?あるとしても、漢字をうまく扱うことができなかったことがありますが、今は10,000個のファイルを使用しています。

をクリックすると、データを一度に送信できますか?

インポートされたデータは中国語ですか?あるとしても、漢字をうまく扱うことができなかったことがありますが、今は10,000個のファイルを使用しています。

をクリックしてください。最大値を超えたセッションが使用されました。

これはどうですか? :

# 读取并显示 CSV 文件的整个内容<?php$row = 1;$handle = fopen("test.csv","r");while ($data = fgetcsv($handle, 1000, ",")) {    $num = count($data);    echo "<p> $num fields in line $row: <br>\n";    $row++;    for ($c=0; $c < $num; $c++) {        echo $data[$c] . "<br>\n";    }}fclose($handle);?>  

使用されていません。セッションが使用されていることを確認するにはどうすればよいですか?

最大値を超えるセッションを使用しました。

しかし、インポートしたいのは Excel ファイルであり、サフィックスは xls です

これはどうでしょうか? :
PHP コード

# CSV ファイルの内容全体を読み込んで表示します

a3ff7c0c7020fe004e8fc4b87010347b $row 行の $num 個のフィールド: ...

/* * PHPExcel.V1.7.6版本 [读取示例] */include 'PHPExcel/IOFactory.php';$filename = "d:/test.xls";$readType = PHPExcel_IOFactory::identify($filename);  //在不知道文档类型的情况下获取$excelReader = PHPExcel_IOFactory::createReader($readType);$PHPExcelObj = $excelReader->load($filename);$currentSheet = $PHPExcelObj->getSheet(0);            //选取第一张表单(Sheet1)为当前操作的表单$excelRows = $currentSheet->getHighestRow();          //获取最大行$excelColumn = $currentSheet->getHighestColumn();     //获取最大列foreach(range(1,$excelRows) as $row){    $line = '<p>';    foreach(range('A',$excelColumn) as $column){        $line .= $currentSheet->getCell($column.$row)->getValue().",";    }    $line .= '</p>';    echo $line;}


この投稿を参照:
http://topic.csdn.net/u/20120517/11/746a745b-27dd-4f54-9882-80d3bf68fb15.html

この投稿の最後にある Web サイトにアクセスして、最新の phExcelReader2.21、まだ 122 件を超える項目を印刷することはできませんが、121 件以内の項目は印刷できます

この投稿を参照してください:
http://topic.csdn.net/u/20120517/11/746a745b-27dd-4f54 -9882- 80d3bf68fb15.html

メッセージ キューをインポートしてオフラインで保存する

メッセージ キューをインポートしてオフラインで保存する

らしいです。少し高度な例はありますか?

13th Floor の返信からの引用:

メッセージ キューをインポートしてオフラインで保存します



これはこの質問ではなく、他の投稿への返信です

基本から始めましょう。

しばらく前にこのクラスを使用しましたが、2000 行の Excel ファイルをインポートできませんでした。

問題は解決しましたか?少し前に、このクラスは 2000 行の Excel ファイルのインポートに失敗しましたが、500 行の Excel ファイルには問題ありませんでした。

phpexcelでExcelファイルをデータベースにインポートできる例をネット上で見つけたのですが、データが122を超えると、例えばExcelファイルに123個のデータがあるとインポートできなくなります。皆さんにご覧いただけるようにコードを投稿します。
require_once '../phpExcelReader/Excel/reader.php';
$data->setOutput...


これを使用してください: http://www.phpclasses.org/package/6235-PHP-Parse-and-access-binary-Excel-files-in-pure-PHP.html

使ってみるととても良いと思います。中国語と xlsx 形式をサポートし、すべてのテーブル、列、行、セルを走査して解析できます。私も以前phpExcelReaderを使っていて色々と問題があったので見つけました。
奇妙なことに、これを使用すると 122 個のアイテムをインポートできますが、123 個のアイテムはインポートできません。 私の Excel をダウンロードしてみてください


投稿者の返信を引用します:

インターネット上で例を見つけました。phpexcel を使用して Excel ファイルをデータベースにインポートできますが、たとえば、データが 122 を超えると、1 つのファイルに 123 のデータが存在します。 Excelファイルはインポートできません。皆さんにご覧いただけるようにコードを投稿します:
require_once '../phpExcelReader/Excel/reader.php';
$data = new Spreadsheet_Excel_Reader();
$da...

私のものは 281 です。 。 281以降はインポートできません。

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