我正在用 PHP 编写代码,需要config.php
根据网站 URL 包含一个文件。
我在变量中有网站 URL $site
,并且配置$site
在目录中configs/$site/config.php
。
如何在 PHP 中动态地要求这个文件?
这样做安全include "configs/$site/config.php";
吗?
如果您限制$site
为一组值,是的。
$sites = array(
'siteA',
'siteB'
);
if (isset($sites[$site])) {
include "configs/$site/config.php";
} else {
throw new Exception("Unknown site");
}
但请记住:永远不要相信来自外部的任何东西,始终验证来自客户端(浏览器)的值。
没事儿。只要确保$site
变量不能被用户更改!如果用户可以更改它,他可以使其包含任何文件。