Php 如何更改.htaccess文件中指定的url

Php 如何更改.htaccess文件中指定的url,php,url,Php,Url,我在.htaccess文件中编写了将标准URL更改为友好URL的代码 RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php?/$1 [L] 但不幸的是,我不知道如何调整php代码以与.htaccess文件中的代码兼容 下面只是一个简单的代码,因为我不知道如何才能做到这一点 $url = $_GET[0]; //

我在.htaccess文件中编写了将标准URL更改为友好URL的代码

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
但不幸的是,我不知道如何调整php代码以与.htaccess文件中的代码兼容

下面只是一个简单的代码,因为我不知道如何才能做到这一点

$url = $_GET[0]; // I don't know how to get the unknown parameters

if(file_exists("controllers/". $url . ".php")){
    require_once ("controllers/". $url . ".php");
    if(class_exists($url)){
        $controller = new $url;
    }else{
        echo "Class deos not exists.";
    }

}else{
    echo "File deos not exists.";
}

查看
$\u服务器['REQUEST\u URI']

您可以使用
$\u服务器['QUERY\u STRING']
获取URL的
/$1
部分

if ($_SERVER['QUERY_STRING'] === "/main") {
    echo "Main Page";
} elseif ($_SERVER['QUERY_STRING'] === "/sub") {
    echo "Sub Page";
} else {
    echo "File does not exists.";
}
如果我更改代码
RewriteRule^(.*)$index.php?/$1,会怎么样
[五十] 
重写规则^(.*)$index.php/$1[L]
。我被开除了

然后,您可以使用
$\u服务器['PATH\u INFO']
进行此操作

$pathInfo = $_SERVER['PATH_INFO'];

if ($pathInfo === "/main") {
    echo "Main Page";
} elseif ($pathInfo === "/sub") {
    echo "Sub Page";
} else {
    echo "File does not exists.";
}

您能澄清一下您想要实现什么吗?@5ervant:我想编写一个php代码,使url与此代码兼容
RewriteRule^(.*)$index.php?/$1[L]
。使用
print\r($\u-GET)进行调试
打印($\服务器)。那些平淡无奇的copynpaste重写规则可以被替换为
FallBackResource
,顺便说一句。马里奥:对不起,我不明白你的意思,你能进一步澄清一下吗。谢谢,但是如果我将代码
RewriteRule^(.*)$index.php?/$1[code>改为
RewriteRule^(.*)$index.php/$1[L]
,那该怎么办。我已被删除
。我认为必须使用
$\u服务器['REQUEST\u URI']
。正如Fuser97381所说的那样?