我第一次尝试使用php构建路由。
我想要这样的链接:
http://localhost/controller/action
这是我的.htaccess文件:
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^([a-zA-Z]*)/?([a-zA-Z]*)?/?([a-zA-Z0-9]*)?/?$ index.php?controller=$1&action=$2&id=$3 [NC,L]
我想访问$_GET['controller']
和$_GET['action']
,但它提供了 - 未定义的索引错误。
var_dump($_GET)
返回
数组(大小= 0) 空
答案 0 :(得分:0)
问题是,你的正则表达式不那么严格,并且斜杠(但不是最后一个)不能是正确运行的可选项。你也应该逃避斜线。
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^([a-zA-Z]+)\/([a-zA-Z]+)\/([a-zA-Z0-9]+)\/?$ index.php?controller=$1&action=$2&id=$3 [NC,L]