如何从PHP浏览器获取URL?

时间:2020-05-23 17:37:12

标签: php

我想在php中获取网址。

我要访问“ demoproject” 下的“ book文件夹” 中的“ index.php” 文件: / p>

demoproject/book/index.php

我想要什么:

当有人在浏览器中键入内容时,我想访问index.php文件

demoproject/book/page2

在index.php文件中,我编写了用于动态访问page2的代码。 如果用户键入page3,则page3内容将加载到index.php文件中

这是我在做什么:

// Assume user type in the browser
// demoproject/book/page2

$url="http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
$errors = array();
//get request url
$request_uri = explode('/', $_SERVER['REQUEST_URI']);
//print_r($request_uri);
echo $request_uri[3];   // page2

?>

但是我的问题是我可以使用index.php访问以下网址

demoproject/book/index.php

但是当用户在浏览器中输入如下内容时,无法获得page2:

demoproject/book/page2

我只在用户输入时才想要

demoproject/book/page2     // I want to get page2 on index.php
demoproject/book/page3     // I want to get page3 on index.php
demoproject/book/page4     // I want to get page4 on index.php
demoproject/book/page5     // I want to get page5 on index.php
demoproject/book/page6     // I want to get page6 on index.php

任何想法或建议都会受到欢迎。 谢谢

1 个答案:

答案 0 :(得分:-1)

我建议您维护以下文件结构:

demoproject/bookName/page1.php
demoproject/bookName/page2.php
demoproject/bookName/page3.php etc

但是据我了解,您想在访问页面时从文件名中删除dot.php扩展名,您可以使用.htaccess文件将其重定向到相应页面。例如:

如果您的用户转到-

url : demoproject/bookName/page2

它们将自动重定向到-

url : demoproject/bookName/page2.php

虽然该网址不会显示dot.php扩展名。

使用以下.htaccess代码

RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule !.*\.php$ %{REQUEST_FILENAME}.php [QSA,L]

让我知道是否需要进一步的帮助。

相关问题