PHP所有函数变量全局

时间:2010-06-09 15:42:39

标签: php variables global-variables global

我的网站上有一个名为functions的函数,名为functions.php。 Index.php加载该页面并调用函数init:

function init(){
   error_reporting(0);
   $time_start = microtime(true);
   $con = mysql_connect("localhost","user123","password123");
   mysql_select_db("db123");
}

如何在不必使用

的情况下将所有这些变量全局化(如果可能)
global $time_start;
global $con;

4 个答案:

答案 0 :(得分:3)

你不希望它是全球性的。

另一种方法是将其封装在一个对象中,甚至使用DI来配置它。

答案 1 :(得分:1)

也许你可以从init()函数返回这些变量:

function init(){
   error_reporting(0);
   $time_start = microtime(true);
   $con = mysql_connect("localhost","user123","password123");
   mysql_select_db("db123");

   return array('time_start' => $time_start, 'con' => $con);
}

答案 2 :(得分:1)

如果您想专门使用全局变量,请查看$GLOBALS数组。即使有其他几种方式, Pass by reference Data Registry Object 推荐等等。

More on variable scopes

答案 3 :(得分:0)

您可以在全局范围内声明它们,然后通过引用将它们传递给函数。 修改功能后执行此操作。