Mac OS X Yosemite で Symfony を使用しており、環境変数を設定してデータベース情報を取得したいと考えています。
私は多くのプロジェクトを持っているので、それらを分離する方法が必要です。私は次のことをしました:
launchctl setenv SYMFONY__MYPROJECT__DATABASE__NAME test
次に、私のプロジェクトでは、次のことを行いました。
doctrine:
dbal:
connections:
default:
dbname: %myproject.database.name%
ページを実行しようとすると、次のエラーが表示されます。
You have requested a non-existent parameter "myproject.database.name%
次に、launchctl の代わりに export を使用する必要があるかもしれないと言いました。
export SYMFONY__MYPROJECT__DATABASE__NAME=test
しかし、再起動してもエラーは同じでした。私はMAMP PROを使用していますが、それとのリンクがあるかどうかわかりません。
編集 1:phpinfo()
との結果を探したところphp -i
、変数が に表示され$_ENV[]
ます。デバッグすると、環境変数がサーバーのものとマージされていないように見えます... https://github.com/symfony/symfony/issues/10208
fabpot が で修正として行ったことを実行することで、問題を解決できますapp_dev.php
。
$_SERVER = array_merge($_SERVER, $_ENV);
しかし、symfony がやるべきことのために app_dev.php を変更することは、私が実際に望んでいることではありません。