这是我的第一篇文章,所以请告诉我我是否做错了。
我正在尝试理解github和框架上的大型路由器的逻辑。 我理解像这样工作的路由器:
文件夹结构:
Options -MultiViews
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]
index.php文件,方向代码:
class Home{
Router::get("/default", function(){
echo 'Hello';
});
Router::Dispatch();
}
.htaccess文件:
public static void main(String[] args) {
int i;
String s = "0b00110001";
i = Integer.decode(s);
System.out.print(s);
}
所以在页面www.xyz.com/home/default/param被称为控制器类home和func。默认使用params,在文件结构中你仍然在index.php文件中,url只调用不同的控制器类。
因此,我想要理解的路由器的工作方式如下:
if( isset(params['email']) && !empty(params['email']) ) {
echo " params email exists"
}else{
echo "params email doesn't exist"
}
从我在github here上找到的代码等我认为,路由器从控制器加载所有函数并执行与url匹配的那个...呵呵?
问: 当我还在index.php上时,如何执行上面的控制器类?