0

我想从 url 中获取 id。

URL:- localhost/projects/PortalGrocery/development/admin/projects/home/edit/27

我试过了:-

    $update_url = $_SERVER['REQUEST_URI'];
    $path = parse_url($update_url, PHP_URL_PATH);
    $pathComponents = explode("/", trim($path, "/"));
    $ID = $pathComponents[7];

它工作正常,但是当我在实时站点上上传我的项目时,我必须每次在每个控制器中更改组件编号,因为编号有所不同。的组件。

所以,我想知道是否有任何其他方法可以这样做..?

4

4 回答 4

4
$id = substr(strrchr($_SERVER['REQUEST_URI'], '/'), 1);

此代码提取最后一个字符串之后的部分/

于 2013-05-10T05:34:11.393 回答
2

我想而不是这一切

$update_url = $_SERVER['REQUEST_URI'];
$path = parse_url($update_url, PHP_URL_PATH);
$pathComponents = explode("/", trim($path, "/"));
$ID = $pathComponents[7];

您应该尝试以下技巧

$ID = substr(strrchr($_SERVER['REQUEST_URI'], '/'), 1);
于 2013-05-10T05:40:09.153 回答
0

由于您的 id 总是在最后,Zerkms 解决方案将起作用

$id = substr(strrchr($_SERVER['REQUEST_URI'], '/'), 1);
于 2013-05-10T05:36:39.870 回答
0

你可以通过以下方式做到这一点..

$update_url = "localhost/projects/PortalGrocery/development/admin/projects/home/edit/27";
$path = parse_url($update_url, PHP_URL_PATH);
$pathComponents = explode("/", trim($path, "/"));

echo $pathComponents[sizeof($pathComponents) - 1]; //gives 27
于 2013-05-10T05:37:12.077 回答