Symfony如何在实体类中读取CSV文件

时间:2014-10-15 18:31:01

标签: php symfony csv

我正在使用Symfony2,我试图在db中创建记录之前提出上传文件并验证其内容的最佳方案。

我可以上传文件,没有任何问题。

我遇到问题的地方就在这里。我想验证csv文件包含正确数量的字段,并且在db表中实际创建条目之前,字段中的数据是准确的。 (我知道我必须创建其他功能来实际检查字段中的数据)

这在我的upload()函数的实体类中最好完成吗?

这是我的导入实体类:

 /**
 * Upload an import file
 */
public function upload(){
    // File prop can be empty
    if(NULL === $this->getFile()){
        return;
    }

    $fileName = $this->getFile()->getClientOriginalName();

    // Move file to target directory using org. name
    $this->getFile()->move($this->getUploadAbsolutePath(), $fileName);

我可以在这里查看csv的内容吗?

如何在此实体函数中直接读取该文件?

我已经尝试了这个并且它没有工作......

 $readFile = $this->getUploadAbsolutePath() . $fileName;
 $readFile->getData()->openFile('r');

如果文件检出并且一切正常,那么我可以在以下值周围放置if语句?有人有什么建议吗?

    // set the path field
    $this->setPath($this->getUploadPath() . $fileName);

    // set the import file field value
    $this->setImportFile($fileName);

    // set the batchId value
    $this->setBatchId($this->getRandomCode());

    // set the file value
    $this->setFile();

}

0 个答案:

没有答案