O script PHP não pode ler os argumentos da CLI quando as extensões extras estão habilitadas no php.ini

1

Espero que eu esteja postando no StackExchange correto.

Estou enfrentando um problema muito estranho com o PHP CLI. Estou usando o Symfony Framework e não posso usar os comandos do Symfony corretamente quando adiciono extensões em /etc/php5/cli/php.ini .

Melhor que um longo discurso, assista:

1 / saída normal, sem extensões

app/console doctrine:schema:update

Nothing to update - your database is already in sync with the current entity metadata.

→ Ok Nota: app / console é um script PHP com um shellbang

app/console doctrine:schema:update --force

Nothing to update - your database is already in sync with the current entity metadata.

→ Ok ( --force é uma opção do Symfony, ela é passada para o script pelo PHP)

2 / Adicionando duas extensões ao PHP

Eu edito o php.ini, sudo vim /etc/php5/cli/php.ini . Eu adiciono duas linhas:

extension=cairo.so
extension=php_gtk2.so

Essas extensões estão funcionando perfeitamente. Sem avisos, sem erros.

3 / "crash" do PHP, acabou de adicionar duas extensões não relacionadas

app/console doctrine:schema:update

Nothing to update - your database is already in sync with the current entity metadata.

→ Ok ... Mas:

app/console doctrine:schema:update --force

PHP Fatal error:  Option inconnue --force in Unknown on line 0
Could not startup.

→ O que? Não é um bug do Symfony ... Nota: Option inconnue significa apenas algo como Unknown option em francês.

O mesmo efeito em outros comandos, comandos do Symfony ou scripts PHP independentes.

Conclusão: O PHP agora tem um jeito estranho de passar opções para o script PHP chamado.

Eu também coloco php na frente de app/console , mas isso não muda nada. Se eu comentar ou remover as extensões no php.ini, tudo funciona. Apenas estas duas linhas estão envolvidas.

Edit: apenas atualizei o PHP de 5.5.12 para 5.6.3, mesmo problema.

    
por Morgan Touverey Quilling 12.12.2014 / 19:13

0 respostas