在Cakephp中,如何从整个应用程序访问数组

时间:2009-05-25 22:28:51

标签: php arrays cakephp

在CakePHP中,如何创建一个我们可以使用整个应用程序访问的数组?是否有相当于PHP的define()函数?

3 个答案:

答案 0 :(得分:15)

使用Configure类。

在app / config / bootstrap.php中:

配置:: write('myArray',array(1,2,3));

然后在您的应用中的任何位置,例如模型,视图,控制器,帮助器,行为,组件等只需使用以下方式访问它:

$ myArray = Configure :: read('myArray'); // $ myArray将包含数组(1,2,3)

答案 1 :(得分:2)

我通常使用位于“config”文件夹中的“bootstrap.php”文件。

答案 2 :(得分:0)

如果你不想“限制”自己对CakePHP给你的东西,你可以使用全局变量(yukk)或者只是将它包装在一个类中:

class Foo {
    public static $bar = { 3, 7, 42 };
}

或使用单身模式:

class Foo {
    private static $instance = null;
    public $myVar;

    private function __construct() {
        $this->myVar = { 3, 7, 42 };
    }

    public static function getInstance() {
        if (self::$instance == null) {
            self::$instance = new self();
        }
        return self::$instance;
    }
}

然后你可以这样做:

var_dump(Foo::$bar);

var_dump(Foo::getInstance()->myVar);
相关问题