(アパッチ)setEnvを= PROD
を実行中の端末からnullを返すと端末(MAC)から実行している間(のgetenv()関数を使用して)PHPでENVに私はhttpd.confで定義されたPHPスクリプト
を呼び出すGETENV php file.php envはNULL
ですが、Webページから実行したときに動作しています。 "prod"を印刷する
(アパッチ)setEnvを= PROD
を実行中の端末からnullを返すと端末(MAC)から実行している間(のgetenv()関数を使用して)PHPでENVに私はhttpd.confで定義されたPHPスクリプト
を呼び出すGETENV php file.php envはNULL
ですが、Webページから実行したときに動作しています。 "prod"を印刷する
macOSとLinuxのコンソール(ターミナル)で実行するプログラムの環境を設定する方法はいくつかあります。 (手順は、Windows上で似ていますが、構文が異なります。)
あなたはそれだけで、コマンドラインの現在の実行のために値prod
で環境変数env
を設定するには、コマンドラインの前にenv=prod
を置くことができます。
$ env=prod php -f script.php
別のコマンドラインとしてexport env=prod
を使用できます。コンソールで実行しているシェルの現在の実行について、値env
に値prod
を設定します。その前にexport
キーワード(あなたがシェルまたは設定解除の変数を閉じるまで)今からそれが起動するすべてのプロセスに変数を渡すようにシェルに指示します:
$ export env=prod
$ php -f script.php
あなたは永久に変数を設定したい場合は、行export env=prod
を~/.profile
または~/.bashrc
に置くか、または好みのシェルの初期化スクリプト(bash
でない場合)を入れます。その後起動するシェルのすべてのインスタンスが初期化スクリプトを実行し、の値を持つ変数env
を環境内に設定し、シェルが起動する子プロセスにエクスポート可能としてマークします。
apacheはsapiですが、cliはまったく異なるものです。 – hassan
Apacheの場合は 'php.ini'、PHPの場合はもう一つのCLIがあります – RiggsFolly
Webサーバーを完全に回避する方法でPHPスクリプトを実行すると、Webサーバーレベルで設定したものは効果がありませんライン) - それは本当に驚きではありません。 – CBroe