PHP自定义全局变量

时间:2011-03-02 04:09:18

标签: php variables

创建可以在文件到文件甚至是对象之间使用的变量的最佳方法是什么?例如:

设置文件将包含如下数组:

<?php
$config = array(
            'key1' => 'val1',
            'key2' => 'val2'
);
?>


<?php
class config {
   function get_data($file){
      require_once('config/'.$file.'.php');
      foreach($config as $key => $val){
           $this->$key = $val;
      }
   }
}
?>

2 个答案:

答案 0 :(得分:5)

最好的方法是在PHP配置文件中使用define()并在整个网站中包含它。这样可以防止您意外覆盖配置中的值。

然而,问题是,不允许使用数组。仅允许标量和空值。

另一种方法是将配置文件与静态类结合使用。只有静态类应该直接访问该文件,您可以使用该类来获取值。

CakePHP和Zend(以及其他)使用此方法

答案 1 :(得分:0)

如果您需要的只是全局站点配置属性(例如数据库的用户名和密码,保存上传文件的路径),只需在config.phpinclude中定义一些数组/变量即可。等等。)

相关问题