こんにちは、私は Symfony2 を初めて使用します。Excel ファイルを MYSQL データベースにアップロードする必要がありますか? 誰かがそれを行う方法の例を送ってもらえますか? らきさん、ありがとうございます
2586 次
2 に答える
1
Ceradの例はオプションですが、そのバンドルを使用せず、mysqlでも機能しません。このバンドルは、サービスを公開する単純な依存関係です。Excelからmysqlにデータを保存する必要がある場合は、最初にファイルをどこかにアップロードする必要があります。次に
、サービスでファイルを読み取ります。$ excelObj = $ this-> get('xls.load_xls5')-> load($ filename); 次に、PHPExcelのドキュメントを読む必要があります
それが少し役立つことを願っています
于 2012-12-18T23:22:08.703 に答える
1
まず、composer.jsonファイルに「CodePlex / PHPExcel」:「1.7.7」を追加して更新します。
PHPExcelのものとコードの間に位置するクラスを追加します。何かのようなもの:
namespace Cerad\ArbiterBundle\Format;
class Excel
{
protected function createReaderForFile($fileName,$readDataOnly = true)
{
// Most common case
$reader = new \PHPExcel_Reader_Excel5();
$reader->setReadDataOnly($readDataOnly);
if ($reader->canRead($fileName)) return $reader;
// Make sure have zip archive
if (class_exists('ZipArchive'))
{
$reader = new \PHPExcel_Reader_Excel2007();
$reader->setReadDataOnly($readDataOnly);
if ($reader->canRead($fileName)) return $reader;
}
// Note that csv does not actually check for a csv file
$reader = new \PHPExcel_Reader_CSV();
if ($reader->canRead($fileName)) return $reader;
throw new Exception("No Reader found for $fileName");
}
public function load($fileName, $readDataOnly = true)
{
$reader = $this->createReaderForFile($fileName,$readDataOnly);
return $reader->load($fileName);
}
}
これで、コードに次のようなものが含まれます。
$excel = new Excel();
$reader = $excel->load('SomeFileName.xls');
$ws = $reader->getSheet(0);
$rows = $ws->toArray();
そして、離れて処理します。
于 2012-12-18T17:05:28.023 に答える