我想在 Slim3 中进行简单的模板渲染,但出现错误:
这是我的代码: 命名空间 Controller ;
class Hello
{
function __construct() {
// Instantiate the app
$settings = require __DIR__ . '/../../src/settings.php';
$this->app = new \Slim\App($settings);
}
public function index(){
return $this->app->render('web/pages/hello.phtml'); //LINE20
}
}
这是我得到的错误:
Message: Method render is not a valid method
最佳答案
App
对象本身不处理任何渲染,您将需要一个模板附加组件,可能是 this one基于模板的 .phtml
扩展名。使用 Composer 安装:
composer require slim/php-view
然后你的 Controller 方法会做这样的事情:
$view = new \Slim\Views\PhpRenderer('./web/pages');
return $view->render($response, '/hello.phtml');
您最终会希望将渲染器放入依赖项注入(inject)容器中,而不是在您的 Controller 方法中创建一个新实例,但这应该让您开始。
关于php - Slim 3 渲染方法无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34807616/