我有一些站点元数据我希望可以更改...例如,在我的应用程序中,如果系统管理员不想使用站点的“库存”部分,他/她可以将其关闭,并且它将从主站点消失。
所以我在想,也许我可以在数据库中创建一个名为“元”的表,并在那里插入值(或元组)!然后,如果模块被关闭,脚本将更新该行,并将“模块 x”设置为 0,这样我就完成了,对吧?
除了对于一组值来说似乎需要大量的开销(创建整个表并维护它等)......基本上,我的解决方案听起来就像将一个方形钉子推入一个圆形槽中。
粗略地浏览了一下 drupal 数据库,没有发现任何结果,我猜他们在服务器本身上使用了配置文件?如果是这种情况,我不知道 Web 应用程序如何读取 .cfg 文件(例如)中保存的值,也不知道此类应用程序如何将信息保存到文件中。如果您以前解决过这个问题,我将非常感谢您的见解。
顺便说一句,我主要使用 PHP。
提前致谢!
我经常看到使用配置数组来完成此操作:
$config["admin_email"] = "[email protected] /cdn-cgi/l/email-protection";
$config["site_name"] = "Bob's Trinket Store";
$config["excluded_modules"] = array("inventory", "user_chat");
然后稍后您可以检查:
if (!in_array("inventory", $config["excluded_modules"])) {
// include inventory logic
}
诚然,这有点倒退了。实际上,明确声明会更明智included模块,而不是负面的。然后你会参考这个config.php
在您的项目中加载并响应不同的配置。
您也可以将其实现为数据库表,至少创建两个字段:
- Option
- Value
Where option
可能是“excluded_modules”及其对应的value
将是“库存,user_cat”。但老实说,这种方法有点草率,并且可能会在将来给你带来一些挫败感。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)