[英]Routing in PHP using the Flight framework
我没有任何PHP框架经验,只是对它们的使用有一些非常普遍的问题:具体来说,URL路由。
我正在使用微框架,飞行。
简单路由示例:
<?php
// Flight Framework
require "flight/Flight.php";
Flight::route('/', function(){
echo 'hello world!';
});
Flight::start();
?>
当我访问此页面(/)时,我收到了'hello world'消息。 很好,工作正常。
我的问题是,路由是否用于不存在的URL(例如/类别)? 然后,当用户访问该页面时,将调用该函数?
因此,如果我将路线更改为“/ categories”,那么访问/类别时不应显示“hello world”功能吗?
为了满足您的期望,您需要启用URL重写。 如果您使用Mod rewrite
将Apache作为Web服务器使用,则可以实现此目的。 重写URL时,Web服务器将所有不存在的路径URL路由到index.php
并让index.php处理请求。 下面是放在.htaccess
文件中的此类重写代码的示例。
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
使用Flight时,使用PHP的内部Web服务器要容易得多。 至少用于测试目的。
php -S <url>:<port>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.