【Ruby3.x】Object::ENV定数の使い方
ENV定数の使い方について、初心者にもわかりやすく解説します。
基本的な使い方
ENV定数は、プログラムが実行されているオペレーティングシステムの環境変数を表す定数です。これは、キーと値のペアで構成されるHashオブジェクトのように振る舞い、Rubyプログラムから環境変数にアクセスするためのインターフェースを提供します。環境変数とは、システムやユーザーに関する情報、例えばプログラムの検索パス(PATH)やユーザーのホームディレクトリ(HOME)などを保持する特別な設定値のことです。
RubyプログラムからENV定数を使用することで、これらの環境変数の値を読み取ることができます。例えば、ENV['HOME']のように記述することで、現在のユーザーのホームディレクトリのパスを取得できます。また、ENV['MY_SETTING'] = 'value'のようにして、新しい環境変数をプログラム実行中に一時的に設定したり、既存の環境変数の値を変更したりすることも可能です。不要になった環境変数は、ENV.delete('MY_SETTING')で削除できます。
この定数を通じて行われた環境変数の変更は、そのRubyプログラムが実行されているプロセスと、そのプログラムから起動される子プロセスにのみ影響します。システム全体や他のプログラムには影響せず、プログラムが終了すればその変更も失われます。これにより、プログラムの実行時における振る舞いを柔軟に制御したり、データベース接続情報やAPIキーなどの設定情報を外部から渡したりする際に非常に役立ちます。例えば、開発環境と本番環境で異なる動作をさせるために使われることがあります。
構文(syntax)
1ENV['PATH']
引数(parameters)
引数なし
引数はありません
戻り値(return)
Object
ENVは、実行環境で設定されている環境変数を格納したHashライクなオブジェクトです。環境変数名(文字列)をキーとして、その値(文字列)を取得できます。