我有一些变量,我需要访问更多功能,而不是我最初的想法。
在我不断增长的功能列表中包含它们的最佳方法是什么?
我有类似
的东西$site = 'a';
$admin = 'b';
$dir = 'c';
$ma_plug = 'd';
$base = 'e';
//Etc.
我需要几乎所有这些功能。我最初在做
function a(){
global $site, $admin, $dir, $ma_plug, $base;
//Write the A function
}
function b(){
global $site, $admin, $dir, $ma_plug, $base;
//Write the B function
}
这很棒,直到我意识到我的写作功能比我最初想的要多。
将所有这些变量纳入(几乎)每个函数的范围的最佳方法是什么?就像我做的那样?或者像使用常量?如果可能的话,我想避免使用session()
答案 0 :(得分:6)
如果这些函数是唯一使用这些变量的函数,那么最好创建一个这些变量是本地变量的类。
这样您就不会污染全局命名空间,并且需要在每个函数中使用global
个关键字。
例如:
class MySite {
private $site;
private $admin;
private $dir;
private $ma_plug;
private $base;
function __construct($site, $admin, $dir, $ma, $base) {
$this->site = $site;
$this->admin = $admin;
//...
}
}