$_SERVER['PATH_INFO']
将返回/99
。然后,您可以使用trim()
或substr()
删除/
.
'PATH_INFO'
Contains any client-provided pathname information trailing the actual script
filename but preceding the query string, if available. For instance, if the
current script was accessed via the URL
http://www.example.com/php/path_info.php/some/stuff?foo=bar, then
$_SERVER['PATH_INFO'] would contain /some/stuff.
来自http://php.net/manual/en/reserved.variables.server.php
更新
根据您的评论,我对您到底在尝试什么感到有些困惑。如果您返回 [object Object],则意味着您尝试将 JavaScript 对象作为 URI 的一部分发送。我建议对任何 json 数据使用 HTTP 请求正文。如果您打算使用 URI 来唯一标识您发送到服务器的数据(如“99”),那么上面的代码将帮助您解析 URI。如果您想知道如何解析 HTTP 请求负载,那么下面的代码会有所帮助。
从命令行使用 json 的示例 POST 请求:
curl -i -X POST -d '{"a": 1, "b": "abc"}' http://localhost:8080/test/rdp3.php/99
使用 PHP 解析 json 对象:
<?php
$data = json_decode(file_get_contents("php://input"));
var_dump($data); // $data is of type stdClass so it can be treated like an object.
var_dump($data->a); // => 1
var_dump($data->b); // => abcd