私は別の環境(異なるPHPのバージョン、拡張機能など)を持つためにvirtphpを使用しています。symfonyサーバを使用するphp.iniファイル:runコマンド?
私はローカルの開発サーバーを実行するためにsymfonyのコマンドを使用します。
php app/console server:run
それは私の仮想環境(〜/ .virtenv/ENVS/myenvの/ etc/PHPのphp.iniファイルを無視するようです.ini)、例えば、:そのファイルで定義された拡張をロードしません。
しかし、私は内蔵のサーバー直接 PHPを使用する場合、それは完璧に動作します:
php -S 127.0.0.1:8000 --docroot=web/
これら二つのコマンドまたは何symfonyは違っやるんの違いは何ですか?
これはphp --ini
コマンドの出力である:コマンドphp app/console server:run
を使用する場合
Configuration File (php.ini) Path: /usr/local/etc/php/5.5
Loaded Configuration File: /Users/mjuarez/.virtphp/envs/wowfi/etc/php.ini
Scan for additional .ini files in: /Users/mjuarez/.virtphp/envs/wowfi/etc/php
Additional .ini files parsed: (none)
これはsymfonyコントローラ内の関数phpinfo()
の出力である:
Configuration File (php.ini) Path /usr/local/etc/php/5.5
Loaded Configuration File /usr/local/etc/php/5.5/php.ini
Scan this dir for additional .ini files /Users/mjuarez/.virtphp/envs/wowfi/etc/php
Additional .ini files parsed (none)
"の違いに注意してくださいロードされた構成ファイル "... php --ini
コマンドを使用すると、"ロードされた構成ファイル "がPHP仮想環境のものに置き換えられ、コマンドを使用するとphp app/console server:run
は "グローバル"設定ファイルを使用します。
'PHP phpがロードされるのは 'php -ini'ですが、そのコマンドの出力は、両方のファイルを"グローバル "php.iniとphp.iniを私の仮想環境にロードしていることを示しています。 –
おかげ@MarcBにあなたの.iniファイルを示して実際にコマンドをロードされた(S)ファイルの.ini何を教えてくれます-i' – PachinSV
一部の(ただしすべてではない).iniディレクティブは、実行時に 'ini_set()'コールで上書きすることができます。 'php -S'はsymphonyを直接実行していないので、http要求を待っているだけで、THENはsymphonyを実行します。 –