自动加载不起作用
Autoloading not working
我正在试用 Fat-Free Framework,但遇到了一些麻烦。
我尝试使用自动加载来加载我的路线之一,如下所示:
<?php
$f3 = require 'vendor/bcosca/fatfree-core/base.php';
$f3->set('DEBUG', 3);
$f3->set('AUTOLOAD', 'app/');
$f3->config('app/routes.ini');
$f3->run();
我有一个 app/ 目录,里面有一个 routes.ini 文件,像这样:
[routes]
GET / = Test->show
然后,我在 app/ 中有一个 Test.php 文件,里面有这个 :
<?php
class Test {
function show($f3) {
echo 'ok !';
}
}
在 运行 之后,我得到了一个很大的错误,说明如下:
Method Not Allowed
HTTP 405 (GET /)
有什么想法吗? (这不是我的 PHP 版本,如果你问问自己的话)
好吧,我尝试了一些东西。这确实有效:
index.php文件和之前一样
app/ 目录现在有一个 controllers/ 目录。
控制器目录中有一个名为 index.php 的文件,其中包含:
<?php
namespace Controllers;
class Index {
public function get() {
echo 'Yey !';
}
}
路由文件现在看起来像这样:
[routes]
GET / = Controllers\Index->get
就是这样!有用。
您的初始代码没问题。只是你的Testclass和框架自己的Testclass.
冲突了
将其重命名为任何其他名称,它应该可以工作。
我正在试用 Fat-Free Framework,但遇到了一些麻烦。
我尝试使用自动加载来加载我的路线之一,如下所示:
<?php
$f3 = require 'vendor/bcosca/fatfree-core/base.php';
$f3->set('DEBUG', 3);
$f3->set('AUTOLOAD', 'app/');
$f3->config('app/routes.ini');
$f3->run();
我有一个 app/ 目录,里面有一个 routes.ini 文件,像这样:
[routes]
GET / = Test->show
然后,我在 app/ 中有一个 Test.php 文件,里面有这个 :
<?php
class Test {
function show($f3) {
echo 'ok !';
}
}
在 运行 之后,我得到了一个很大的错误,说明如下:
Method Not Allowed
HTTP 405 (GET /)
有什么想法吗? (这不是我的 PHP 版本,如果你问问自己的话)
好吧,我尝试了一些东西。这确实有效:
index.php文件和之前一样
app/ 目录现在有一个 controllers/ 目录。
控制器目录中有一个名为 index.php 的文件,其中包含:
<?php
namespace Controllers;
class Index {
public function get() {
echo 'Yey !';
}
}
路由文件现在看起来像这样:
[routes]
GET / = Controllers\Index->get
就是这样!有用。
您的初始代码没问题。只是你的Testclass和框架自己的Testclass.
冲突了将其重命名为任何其他名称,它应该可以工作。