You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP开发RESTful API时PATH_INFO无法读取?后参数问题咨询

问题原因

你遇到的情况和explode拆分逻辑无关,是$_SERVER['PATH_INFO']的设计特性导致的:PHP 中的$_SERVER['PATH_INFO']本身只会返回请求地址中「域名之后、?开头的查询参数之前」的路径内容,查询参数默认不会包含在这个变量里。你预期拆分得到[database, table?key=value]是对PATH_INFO的取值范围理解有误,对应你的请求地址,PATH_INFO的实际取值就是/database/table,所以拆分后第二个元素只会是table。

解决方案

  • 路径部分的拆分逻辑不需要调整,你当前拿到的[database, table]是标准的路径拆解结果,查询参数本身不属于路径的一部分。
  • 如果你需要获取?之后的查询参数,不需要手动拆分字符串,直接使用PHP原生的$_GET全局数组即可,示例中的key参数可以直接通过$_GET['key']读取到对应的值value。不管请求方法是GET、PUT还是DELETE,URL中携带的查询参数都可以通过$_GET正常读取。
  • 如果你需要获取整个查询串的原始内容,可以读取$_SERVER['QUERY_STRING']变量,对应你的请求该变量值为key=value。

内容的提问来源于stack exchange,提问作者Sacooley1

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 22:24:03