在控制台命令中创建mysql连接的最佳方法是什么?
$doctrine = $this->getContainer()->get('doctrine');
$em = $doctrine->getEntityManager();
我想编写自己的查询,您的查询方式如何? 因为在symfony4文档中,它使用了学说。
例如,我可以使用https://packagist.org/packages/illuminate/database,但这是一个好习惯吗?
答案 0 :(得分:0)
您总是可以使用Doctrine编写自己的sql(几乎不需要)。
https://ourcodeworld.com/articles/read/245/how-to-execute-plain-sql-using-doctrine-in-symfony-3
但是
$this->getContainer()
在命令中不可用。我建议使用自动装配。
/**
* Command constructor.
*
* @param EntityManagerInterface $entityManager to access Doctrine
*
* @return void
*/
public function __construct(
EntityManagerInterface $entityManager
) : void {
$this->_entityManager = $entityManager;
parent::__construct();
}
此外,Doctrine确实非常强大,因此可以立即解决您的问题。