1 回答
TA贡献1784条经验 获得超9个赞
这是因为你的$_SERVER['SCRIPT_NAME']意志是这样的:/services/page1.php并且它当然与 不同/services/。你想要做的是检查是否$_SERVER['SCRIPT_NAME']以开头/services/,你可以用 strpos https://www.php.net/manual/en/function.strpos.php来做到这一点。
var_dump($_SERVER['SCRIPT_NAME']); // string(15) "/services/a.php"
var_dump($_SERVER['SCRIPT_NAME'] == "/services/"); // bool(false)
var_dump(strpos($_SERVER['SCRIPT_NAME'], "/services/") === 0); // bool(true)
如果您想要目录,也可以使用目录名https://www.php.net/manual/en/function.dirname.php。因此,$_SERVER['SCRIPT_NAME']用 dirname 包裹起来,您将获得目录,并且可以与以下内容进行比较/services:
var_dump(dirname($_SERVER['SCRIPT_NAME'])); // string(9) "/services"
var_dump(dirname($_SERVER['SCRIPT_NAME']) === '/services'); // bool(true)
- 1 回答
- 0 关注
- 86 浏览
添加回答
举报