codeigniter プロジェクトに google-api-php-client ライブラリ (oauth 2.0 の使用用) をロードしています。このライブラリで使用できるように、一連の構成値を構成ファイルで定義したいと考えています。ただし、ライブラリの構成情報が、定義した構成ファイルの前に読み込まれることに気付きました。
たとえば、 ではautoload.php
、config autoloads を次のように設定しました。
$autoload['config'] = array('my_config_file');
内部には、構成値を設定my_config_file.php
する一連のステートメントがあります。define
define('GOOGLE_OAUTH_APPLICATION_NAME','My Application Name');
define('GOOGLE_OAUTH_CLIENT_ID','My App Client ID');
define('GOOGLE_OAUTH_CLIENT_SECRET','My App Client Secret');
これらを google-api-php-client ライブラリの設定で使用したいと思います:
global $apiConfig;
$apiConfig = array(
'application_name' => GOOGLE_OAUTH_APPLICATION_NAME,
'oauth2_client_id' => GOOGLE_OAUTH_CLIENT_ID,
'oauth2_client_secret' => GOOGLE_OAUTH_CLIENT_SECRET
);
これ(およびデバッグ)を行った後、ライブラリの構成ファイルが自動ロードされた構成ファイルの前に実行されることがわかりました。これは、私が得るエラーによってさらに示されます:
Notice: Use of undefined constant GOOGLE_OAUTH_APPLICATION_NAME ...
Notice: Use of undefined constant GOOGLE_OAUTH_CLIENT_ID ...
Notice: Use of undefined constant GOOGLE_OAUTH_CLIENT_SECRET ...
ライブラリ構成がロードされる前にこれらのグローバル構成定数が定義されるようにするにはどうすればよいですか (したがって、この問題は解決されます)。