在CakePHP中创建全局变量的最佳方法是什么?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在CakePHP中创建全局变量的最佳方法是什么?相关的知识,希望对你有一定的参考价值。
我想在Cakephp中创建一个全局变量。如果我在app_controller.php中定义了一些内容
var $varName
我可以访问
$this->varName
来自我的任何控制器,但我无法从模型中获得它。
如何创建可从模型访问的全局变量?
$ varName的值直到运行时才知道,所以我不认为bootstrap.php是一个选项。
CakePHP的新Configure class可用于存储和检索应用程序或运行时特定值。请注意,此类允许您在其中存储任何内容,然后在代码的任何其他部分中使用它
要保存全局变量,请使用Configure Class。例如:
Configure :: write('Company.name','Pizza,Inc。');
要稍后在代码的任何位置读取变量,请使用:
配置::阅读( 'Company.name'); //产量:'Pizza,Inc。'
存储全局常量的推荐文件位于app / config / bootstrap.php中
有关更多信息,请参阅 配置类 - Configure Class CakePhp。或关于Bootstrapping的第3.4.7节
你可以在app / config / core.php中声明全局变量
Configure::write('variable Name','Variable Value');
你可以这样打印:
Configure::read('Variable Name');
可以在app / config / bootstrap.php中定义应用程序的全局函数和变量
有关更多信息,请参阅http://book.cakephp.org/view/48/Bootstrapping-CakePHP
您可以在app / config /目录中的bootstrap.php中定义常量。它可以全局用于任何控制器或视图。
您可以尝试使用bootstrap.php定义常量(蛋糕3)
此文件适用于许多常见的引导任务:
定义便利功能。
声明常量。
定义缓存配置。
定义日志记录配置。
加载自定义变形。
加载配置文件。
ref https://book.cakephp.org/3.0/en/development/configuration.html#bootstrapping-cakephp
实际上,你为什么这样做?模型应该不知道控制器存在。
如果它是业务(模型)对象,则按原样创建它。如果没有,模型不应该知道它。
以上是关于在CakePHP中创建全局变量的最佳方法是什么?的主要内容,如果未能解决你的问题,请参考以下文章
在 SQL Server 中创建和管理全局 Procs 和 UDF 的最佳方法是啥?
在一个 CMake 项目中创建多个 rpm(deb)包的最佳方法是啥?
在 ViewController 中创建选项卡视图的最佳方法是啥