-1
在一个PHP类中,有没有一种方法可以设置一个全局变量,而不需要在每个函数中调用?PHP:在一个类中设置一个全局变量
例如,我有一个名为$settings
变量包含值的数组:
Array([option_1] => on, [option_2] => on, [option_3] => off)
的get_option()
函数来自WordPress的。在$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()
:
$settings = get_option('my_options');
这与其说是可变的两次在两个不同的功能,调用可以在我的课程的不同功能中使用的相同变量的正确方法是什么?我尝试添加只是class My_Class
下$settings
可变功能,但没有奏效:
class My_Class {
global $settings = get_option('my_options');
# Rest of the code below...