我正在使用 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\Component\Debug\Exception\ContextErrorException]
Warning: PDOStatement::execute(): LOAD DATA LOCAL INFILE forbidden
所以我搜索如何解决这个问题并发现了这个:
Symfony2 Doctrine PDO MySQL Connection with LOAD DATA LOCAL INFILE
但是当我尝试将选项放入我的 config.yml
doctrine:
dbal:
options:
1001: true
我收到一个 InvalidConfigurationException:
InvalidConfigurationException: Unrecognized option "options" under "doctrine.dbal"
在我的composer.lock中搜索doctrine/dbal,我可以看到版本2.5.12已安装。
"name": "doctrine/dbal", "version": "v2.5.12",
有人知道如何解决这个问题吗?
编辑:我自己发现的:
In my config there are different connections. So in this case the "options" have to be configured in the default connection:
doctrine:
dbal:
connections:
default:
options:
1001: true
最佳答案
连接选项应在dbal.connections.<connection-name>.options
处定义根据DoctrineBundle 2.5 configuration docs :
doctrine:
dbal:
connections:
default:
options:
# an array of options
key: []
关于php - Symfony 配置 : Doctrine InvalidConfigurationException: Unrecognized option "options" under "doctrine.dbal",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44755963/