我很难找到答案,我确信它在我面前,但我不能把它放在一起.
//Global Variables
global $GLOBAL;
$GLOBAL['myPluginPath'] = dirname( __FILE__ );
//Main Object
class My_Class {
public function __construct() {
// Initialize Settings
require_once $GLOBAL['myPluginPath'] . '/settings.php';
$My_Settings = new My_Settings();
}
}
我想使用一个变量,所以我的代码感觉更有条理,我觉得我可以更好地读取我的代码,当这样定义路径时,它可以更容易地更改变量,以便它在整个代码中应用,如果需要的话.
我可以通过在我的方法中编写变量来使变量工作.
public function WhatEverFunc() {
global $GLOBAL
require_once $GLOBAL['myPluginPath'] . '/settings.php';
}
这里的主要问题是,我想知道这是不好的做法,如果不是有更好的方法,那么必须在每个方法中定义全局$GLOBAL.如果这是不好的做法,你能告诉我良好的做法吗?
还有一件我真正好奇的事情.在主__construct中你看到我没有使用全局$GLOBAL,因为它没有它,但在require_once文件里面是另一个类,它的方法必须使用全局$GLOBAL.希望有人可以解释一下.
我想有些人说这是不好的做法.我读到有一个单身模式(不良做法)和一个全局模式.不确定我上面做了什么构成,我只是有点迷失在我应该做的事情上我想要实现的目标.