我应该如何存储项目设置?
哪个更好 - 使用$settings
包含我所有设置的数组:
$settings['max_photos'] = 30;
//...
或创建一个单例Config
类中包含所有设置?
Class Config {
private $max_photos = 30;
//...
}
有什么好的例子吗?
我认为最好使用常量进行配置。例如使用类常量:
class Config {
const
max_photos = 30,
something_else = 100,
// ...
;
}
echo Config::max_photos;
如果您有 PHP 5.3,您还可以将它们定义为全局常量:
const MAX_PHOTOS = 30;
echo MAX_PHOTOS;
但我认为这远不那么干净和直接。
显然,只有当您只存储常量(即标量、非表达式值)时,这才有效。例如,如果您的配置包含数组,则这将不再起作用。在这种情况下,我将使用具有公共静态属性的 Config 类:
class Config {
public static $per_page = 30;
public static $array = array(...);
}
echo Config::$per_page;
后者与后者非常相似$config
数组方法,但有一个好处(或者这可能是一个缺点?),该类可以从任何地方访问,包括函数和类,而数组只能在全局空间中访问,除非您使用以下命令将其导入到函数/类中global $config;
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)