首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用于标识请求的文件的$_SERVER变量

用于标识请求的文件的$_SERVER变量
EN

Stack Overflow用户
提问于 2018-10-09 11:10:27
回答 1查看 78关注 0票数 1

在PHP变量中,四个变量引用所请求的文件:

代码语言:javascript
运行
复制
["SCRIPT_FILENAME"]=>   string(21) "/webroot/file.php"
["REQUEST_URI"]=>       string(9) "/file.php?param=valyou"
["SCRIPT_NAME"]=>       string(9) "/file.php"
["PHP_SELF"]=>          string(9) "/file.php"

这些数组成员中的任何一个不会引用通过URL请求的实际文件吗?例如,URL重写,我没有使用这个项目的经验或计划。

我注意到"REQUEST_URI“还包括GET变量,我不需要这些变量。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-10-09 11:44:07

如果您需要请求的实际文件,那么您应该使用SCRIPT_FILENAME (绝对文件系统路径)或SCRIPT_NAME (根相对文件系统路径)或...the魔术常量__FILE__来执行当前脚本(但这并不一定是用户请求的文件)。

这些数组成员中的任何一个不会引用通过URL请求的实际文件吗?

是。

虽然PHP_SELF引用所请求的文件,但它也可以包含来自URL的附加路径名信息(PATH_INFO)。例如:/file.php/foo/bar

REQUEST_URI是请求的URL,所以这可能完全不同。只有当请求的URL直接映射到文件系统路径时,它们才会看起来类似。例如,如果URL /foo内部重写到/file.php,那么REQUEST_URI保存/foo,而不是/file.php

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52719622

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档