2

我是 symfony 4 的初学者 :),我想通过 symfony 4 中的输入文件在我的数据库中插入一个 csv 文件

我在我的控制器中尝试了一些东西,但他在 file.txt 中转换了 file.csv,我不明白为什么?

public function upload(Request $request): Response
{

    $upload     = new Upload();
    $formUpload = $this->createForm(UploadType::class, $upload);
    $formUpload->handleRequest($request);
    if ($formUpload->isSubmitted() && $formUpload->isValid()) {

        $file     = $upload->getUpload();
        $fileName = md5(uniqid()).'.'.$file->guessExtension();
        $file->move($this->getParameter('upload_directory'), $fileName);
        $upload->setUpload($fileName);

        $reader = Reader::createFromPath('%kernel.root.dir%/../public/uploads/'.$fileName);
        $result = $reader->fetchAssoc();
        foreach ($result as $row){
            $customer = new Customers();
            $customer
                ->setCivility($row['civility'])
                ->setLastName($row['last_name'])
                ->setFirstName($row['first_name'])
                ->setEmail($row['email'])
                ->setNumber($row['number'])
                ->setDealer($row['dealer'])
                ->setDealerCode($row['dealer_zone'])
                ->setDealerZone($row['dealer_code'])
            ;
            $this->em->persist($customer);

        }
        $this->em->flush();
        $this->addFlash('success','Bien ajouté avec succès');
    }
    return $this->render('customers/upload.html.twig',[
        'formUpload' => $formUpload->createView()
    ]);
}
4

1 回答 1

3

尝试使用$file->getClientOriginalExtension()而不是$file->guessExtension()

于 2019-05-22T12:44:14.530 回答