2013-05-25 203 views
0

我永远在向上和向下移动我的代码添加和删除全局变量的函数。在全局变量内部定义全局变量PHP

是否有可能将全局变量内的全局变量传递给函数以保存每次函数中的定义?如果没有,是否有更好的方法来做到这一点?

我的目标是在每个页面的顶部有一个全局变量索引,而不必担心必须在函数内定义它们。

global $site; 
$site = "global $link, $create, $populate, $delete, $withdraw"; 

$host = ""; 
$username = ""; 
$password = ""; 
$database = ""; 

$link = mysqli_connect("$host", "$username", "$password", "$database"); 

function display() { global $site; // code } 
function populate() { global $site; // code } 
function create() { global $site; // code } 
function withdraw() { global $site; // code } 

    //output 

回答

2

林不知道我是否理解得很好。但是,你为什么不使$site和数组而不是一个字符串?

像这样:

$host = ""; 
$username = ""; 
$password = ""; 
$database = ""; 

$link = mysqli_connect("$host", "$username", "$password", "$database"); 

$site = array(
    'link'  => $link, 
    'create' => $create, 
    'populate' => $populate, 
    'delete' => $delete, 
    'withdraw' => $withdraw, 
); 

function display() { 
    global $site; 
    // Here you can access & modify your $site array 
} 
+0

病检查了这一点,做了一些深入研究这一点,似乎它不是最好的做法,你可以失去追踪哪些变量被用作全局,除非你在一一列举每个功能的顶部;如果你这样做,你可能只是定义它们。如果您一次又一次地在负载函数中使用完全相同的变量,这将非常有用。再次感谢theo +1。 – Edward