Symfony config:Doctrine InvalidConfigurationException:无法识别的选项" options"在" doctrine.dbal"

时间:2017-06-26 08:48:00

标签: php mysql symfony doctrine-orm doctrine

我正在使用Symfony 2并希望使用Doctrine导入本地CSV文件:

$connection = $this->entityManager->getConnection();

        $output->writeln('Importing Articles');

        $path = $this->importHelperService->getCSVBasePath() . 'PromotionArtikel.csv';

        $query =
            <<<EOF
                LOAD DATA LOCAL INFILE '$path' INTO TABLE ProductCSV
                FIELDS TERMINATED BY ','
                ENCLOSED BY '"'
                LINES TERMINATED BY '\r\n'
                IGNORE 1 LINES;
EOF;

        $statement = $connection->prepare($query);
        $statement->execute();

但我得到了

  

[Symfony的\元器件\调试\异常\ ContextErrorException]
  警告:PDOStatement :: execute():LOAD DATA LOCAL INFILE禁止

所以我搜索如何解决这个问题并找到了:

Symfony2 Doctrine PDO MySQL Connection with LOAD DATA LOCAL INFILE

但是当我尝试将选项放入config.yml

doctrine:
    dbal:
        options:
            1001: true

我收到了InvalidConfigurationException:

  

InvalidConfigurationException:无法识别的选项&#34;选项&#34;下   &#34; doctrine.dbal&#34;

在我的composer.lock中,我搜索了doctrine / dbal,我可以看到安装了2.5.12版本。

  

&#34; name&#34;:&#34; doctrine / dbal&#34;,               &#34;版本&#34;:&#34; v2.5.12&#34;,

任何人都知道如何解决这个问题?

编辑:由我自己找到:

  

在我的配置中有不同的连接。所以在这种情况下   &#34;选择&#34;必须在默认连接中配置:

doctrine:
    dbal:
        connections:
            default:
                options:
                    1001: true

1 个答案:

答案 0 :(得分:2)

应根据DoctrineBundle 2.5 configuration docs

dbal.connections.<connection-name>.options定义连接选项
doctrine:
    dbal:
        connections:
            default:
                options:
                    # an array of options
                    key:                  []