PHPクラスでは、各関数で呼び出す必要のないグローバル変数を設定する方法はありますか?PHP:クラス内にグローバル変数を設定する
例えば、私は、値の配列を含んでい$settings
という変数を持っている:
Array([option_1] => on, [option_2] => on, [option_3] => off)
get_option()
機能は、ワードプレスから来ています。 $settings
配列の値は、実行するために機能するかを決定:
class My_Class {
public function __construct() {
# Get array of options
$settings = get_option('my_options');
if (is_array($settings) || is_object($settings)) {
if ($settings['option_1'] == 'on') {
add_action('tag_1', array($this, 'function_1'));
}
if ($settings['option_2'] == 'on') {
add_action('tag_2', array($this, 'function_2'));
}
}
}
public function function_1() {
# Call the array of options again
$settings = get_option('my_options');
echo 'This option is ' . $settings['option_1'];
}
public function function_2() {
# Code here...
}
new My_Class();
をしかし、私は私の__construct()
とfunction_1()
に二回以下の行を呼び出す:2つの異なる機能に二回、この変数を呼び出す代わり
$settings = get_option('my_options');
私のクラスのさまざまな機能の中で使用できる同じ変数を呼び出す正しい方法は何ですか?私はちょうどclass My_Class
下に$settings
変数機能を追加しようとしたが、それはうまくいきませんでした:
class My_Class {
global $settings = get_option('my_options');
# Rest of the code below...