我有我的网站:www.mysite.com /
我想让网址的最后一部分输入个人资料:www.mysite.com/profile/NAME
我如何获得NAME(在PHP中)以及运行代码的位置,因为它将NAME作为文件夹。
答案 0 :(得分:1)
以下是我的.htaccess文件中的内容,它适用于prod
它的名称如www.website.com/userprofile,并放入名为www.website.com/webpage.php?u=userprofile
的链接# PROFILER
RewriteEngine On
# force non-www domain
RewriteCond %{HTTP_HOST} ^www\.website\.com [NC]
RewriteRule (.*) http://website.com/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^([\w_|-]+)$ webpage.php?u=$1 [L,QSA]
RewriteRule ^([\w_|-]+)\/$ webpage.php?u=$1 [L,QSA]
答案 1 :(得分:0)
您的问题似乎有点不清楚。要访问网址的部分内容以进行操作:
查看超级全局$ _SERVER []。它有各种可能对您有用的选项。具体做法是:
'PHP_SELF'当前正在执行的脚本的文件名,相对于 文档根目录。例如,脚本中的$ _SERVER ['PHP_SELF'] 地址www.example.com/foo/bar.php将是/foo/bar.php。该 FILE 常量包含当前(即包含)文件的完整路径和文件名。如果PHP作为命令行处理器运行 此变量包含自PHP 4.3.0以来的脚本名称。以前呢 没有。
http://www.php.net/manual/en/reserved.variables.server.php
如上所述, FILE 常量可能会有所帮助,或者您可以使用:
explode("/", $_SERVER['PHP_SELF']);
将给出哈希值:
{0 => "foo", 1 => "bar.php"}
虽然要小心。如果您允许任意查询并使用这些查询来访问服务器上的文件,则可能会引入严重的安全问题。
如果相反,您的意思是您希望网址显示为您所写的: