altorouter $ match总是返回空数组

时间:2019-05-26 12:38:39

标签: php altorouter

我想尝试使用altorouter,这是我第一次使用它,但是我不知道为什么我不能使它工作。 这是我项目的结构:

enter image description here

这是我在公用文件夹下的index.php代码。

require '../vendor/autoload.php';

$router = new AltoRouter();

//$router->setBasePath('/blog');

define('VIEW_PATH', __DIR__ . '/views');

// map homepage
$router->map( 'GET', '/', function() {
    require VIEW_PATH.'/post/index.php';
});

// map category
$router->map( 'GET', '/blog/category', function() {
    require VIEW_PATH.'/category/show.php';
});

$match = $router->match();

var_dump($match);

当我在php -S localhost:8888之后进入浏览器时,我不断得到$ match变量的空数组。

我尝试设置basePath(在上面的代码中为注释),在这种情况下,$ match返回false。 我已经看到有关此问题的多篇文章,但没有一篇可以帮助我解决问题。

这是.htaccess的代码:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . public/index.php [L]

预先感谢

0 个答案:

没有答案