構成ファイルsetting.phpで変数を設定し、コードから使用するにはどうすればよいですか?


21

構成ファイルsetting.phpで変数を設定し、コードから使用するにはどうすればよいですか?

回答:


27

settings.phpで:

$conf['yoursite_something'] = 5;

次に、コードで:

// Second argument is the default.
variable_get('yoursite_something', NULL);

変数を使用するモジュールまたはサイト名のいずれかで変数にプレフィックスを付けてください。


5

settings.phpで永続変数を宣言する必要はないことに注意してください。コードからvariable_get()を呼び出すだけで、変数が設定されていない場合のデフォルト値を定義できます。たとえば、次のコードは、「mymodule_say_hello」変数が明示的に設定されていない限り、すべてのページリクエストでhelloを返します0

<?php
function mymodule_init() {
  // Get the mymodule_say_hello variable or use 1 if it's not set. 
  if (variable_get('mymodule_say_hello', 1)) {
    drupal_set_message('Hello world');
  }
}
?>

必要に応じて、モジュールは管理者がこの機能を有効にできるフォームを発行できます(system_settings_form関数を使用すると簡単になります)。または、を呼び出してプログラムで設定を変更できますvariable_set('mymodule_say_hello', 0)


1

Drupal 8

settings.phpで:

$settings['foo'] = 'bar';

あなたのコードで:

use Drupal\Core\Site\Settings;

Settings::get('foo', 'mydefaultvalue');
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.