Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何使用symfony2 excelbundle从excel文件检索数据?_Php_Symfony_Bundle_Phpexcel - Fatal编程技术网

Php 如何使用symfony2 excelbundle从excel文件检索数据?

Php 如何使用symfony2 excelbundle从excel文件检索数据?,php,symfony,bundle,phpexcel,Php,Symfony,Bundle,Phpexcel,对于学校项目,我必须从用户上传的Excel文件中收集数据。我正在使用Symfony2,并安装了一个在knpbundles上找到的包,名为ExcelBundle。我读到,为了从Excel文件中收集数据,我应该使用phpExcel对象的createWriter方法。这就是我所做的,如下所示 public function addContactsFromExcelAction(Request $request) { $uploadDir = '/var/www'.$request->ge

对于学校项目,我必须从用户上传的Excel文件中收集数据。我正在使用Symfony2,并安装了一个在knpbundles上找到的包,名为ExcelBundle。我读到,为了从Excel文件中收集数据,我应该使用phpExcel对象的createWriter方法。这就是我所做的,如下所示

public function addContactsFromExcelAction(Request $request) {
    $uploadDir = '/var/www'.$request->getBasePath().'/uploads/';
    //die(var_dump($uploadDir));
    $file = $request->files->get('fichierExcel');
    $fileName = $file->getClientOriginalName();
    $fileSaved = $file->move($uploadDir,$fileName);
    $phpExcelObject = $this->get('phpexcel')->createPHPExcelObject($uploadDir.$fileName);
    $writer = $this->get('phpexcel')->createWriter($phpExcelObject, 'Excel2007');

}
但事实上,我真的不知道如何使用writer从excel数据表的单元格中收集数据


请问,有谁能告诉我实现目标的诀窍吗?

您可以重复以下示例:

public function xlsAction()
{
    $filenames = "your-file-name";
    $phpExcelObject = $this->get('phpexcel')->createPHPExcelObject($filenames);

    foreach ($phpExcelObject ->getWorksheetIterator() as $worksheet) {
        echo 'Worksheet - ' , $worksheet->getTitle();
        foreach ($worksheet->getRowIterator() as $row) {
            echo '    Row number - ' , $row->getRowIndex();
            $cellIterator = $row->getCellIterator();
            $cellIterator->setIterateOnlyExistingCells(false); // Loop all cells, even if it is not set
            foreach ($cellIterator as $cell) {
                if (!is_null($cell)) {
                    echo '        Cell - ' , $cell->getCoordinate() , ' - ' , $cell->getCalculatedValue();
                }
            }
    }
    }
}
更多样品