我尝试将数据库结构导入到使用Symfony / Doctrine进行映射。
我遵循了教程here,它提供了从现有数据库创建映射文件的命令:
php app/console doctrine:mapping:convert xml ./src/Acme/BlogBundle/Resources/config/doctrine/metadata/orm --from-database --force
但PHP解释器立即退出:
PHP Fatal error: Option inconnue --from-database in Unknown on line 0
Could not startup.
(Option inconnue
表示法语中的未知选项)
我可以理解PHP不会将参数传递给app / console脚本。
如果我尝试使用HHVM,则会将参数发送到PHP脚本(因此,运行正常)。
PHP版本:PHP 5.5.12-2ubuntu4.1
编辑:问题已解决,请参阅下面的答案。我明天会接受它(StackOverflow限制)。
答案 0 :(得分:1)
由于控制台脚本中的shebang,您可以通过执行以下操作在命令行中省略php解释器调用:
chmod +x app/console
./app/console doctrine:mapping:convert xml ./src/Acme/BlogBundle/Resources/config/doctrine/metadata/orm --from-database --force
或者,您可以这样做:
php app/console -- doctrine:mapping:convert xml ./src/Acme/BlogBundle/Resources/config/doctrine/metadata/orm --from-database --force
请注意在脚本输入文件名之后另外分隔--
,告诉php解释器每个连续的参数应该被引导到脚本。
答案 1 :(得分:0)
问题解决了。
sudo apt-get purge php5-cli
sudo apt-get install php5-cli
似乎有人had the same problem,有些人认为php.ini丢失了。
所以我重新安装了PHP,现在它完美无缺。
如果有人对此行为有解释,那就太棒了!
编辑:哼,不,有问题。它完美地工作,直到我在php.ini中重新添加我的扩展。我刚刚添加了两行: extension=cairo.so
extension=php_gtk2.so
现在它又被打破了......:/