如何在URL之后获取值

时间:2018-04-04 14:47:21

标签: php html server

我想在PHP中的URL中/之后获取值。

我尝试过使用$_GET['va'],但这只适用于以下内容,

http://localhost:8080/default ?va=xxx

我想要得到的就是这个,

  

http://localhost:8080/default /xxx

如何在PHP中使用xxx之后获取/值。

非常感谢任何帮助。

修改

感谢所有回答的人,我在说明我想要的东西时并不是很清楚。看起来我正在寻找的是漂亮的网址干净的网址

我按照Pedro Amaral Couto's回答解决了这个问题。

这就是我的所作所为;

我在Apache服务器上修改了.htaccess文件,并添加了以下代码。

RewriteEngine On
RewriteRule ^([a-zA-Z0-9]+)$ default.php?page=$1
RewriteRule ^([a-zA-Z0-9]+)/$ default.php?page=$1

然后我将我的default.php文件修改为GET [' page']

<?php
   echo $_GET['page'];
?>

它返回&#34; /&#34;。

之后的值

5 个答案:

答案 0 :(得分:2)

您正在寻找:$_SERVER['REQUEST_URI']

  

为了访问此页面而给出的URI;例如,'/index.html'

答案 1 :(得分:2)

你想做出所谓的&#34; pretty URLs&#34; (和other names)。

您需要正确配置HTTP服务器,否则您将收到404错误。如果您正在使用Apache,这意味着您可以配置.htaccess并激活RewriteEngine模块。您还需要添加正则表达式。

StackOverflow中已经有一个关于该主题的问题:

以下是可能有用的其他相关文章:

您可以在Wordpress中看到它是如何完成的:

如果您遵循这些,您不需要更改PHP代码,您可以使用$ _GET来检索&#34; xxx&#34;。

答案 2 :(得分:1)

basename(parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH));

答案 3 :(得分:1)

因此$_GET全局变量用于解析查询字符串。

您正在寻找的是$_SERVER['REQUEST_URI']全局变量:

$url = $_SERVER['REQUEST_URI'];

$url现在将包含路径的完整网址。您需要使用explode('/', $url)将完整的URL拆分为一个小字符串数组并从那里解析它。

示例:

$pieces = explode('/', $url);
// this will get you the first string value after / in your URL
echo $pieces[0];

答案 4 :(得分:1)

你可以用两种方式做。

1-执行这些步骤

  • 获取网址
  • /
  • 分解
  • 获取数组的最后一个元素

2-添加.htaccess并为某个变量

映射该值
RewriteRule ^default/(.*) page.php?variable=$1

您可以获得$_GET['variable']

相关问题