在 silex 中调用 html(php 个文件)
call html (php files) in silex
如何在 Silex 中使用 html 文件视图。
我正在尝试将 silex 与一些自定义 php 代码结合使用,其中控制器方法包含视图文件。
这是我的:在我的 index.php
$app->get('/', function (Request $request) {
$homeController = new HomeController($request);
$output = $homeController->show($request);
return new Response($output);
});
$app->run();
这是我的控制器的显示方法:
ob_start();
include "view/start.html.php";
include "view/header.html.php";
include "view/contact.html.php";
include "view/footer.html.php";
include "view/end.html.php";
return ob_end_clean();
有没有办法让它工作?
我不想将显示哪些视图的逻辑从控制器移动到 index.php。而且我暂时不想使用树枝。
这是我得到的错误:
UnexpectedValueException in Response.php line 403:
The Response content must be a string or object implementing __toString(), "boolean" given.
谢谢
来自你的错误:
The Response content must be a string or object implementing __toString(), "boolean" given.
可以放心地假设您的问题是您的其中一个包含失败。来自 PHP 关于 include
的手册:
include returns FALSE on failure and raises a warning
所以您可能正在尝试包含一个不存在的文件,或者可能其中一个文件正在生成错误。
在开发环境中,您应该确保显示您的 PHP 错误(查看 this question)
您收到的错误是由于 ob_end_clean
returns a boolean (success or failure). The function you're probably looking for is ob_get_clean
.
ob_start();
include "view/start.html.php";
include "view/header.html.php";
include "view/contact.html.php";
include "view/footer.html.php";
include "view/end.html.php";
return ob_get_clean();
如何在 Silex 中使用 html 文件视图。
我正在尝试将 silex 与一些自定义 php 代码结合使用,其中控制器方法包含视图文件。
这是我的:在我的 index.php
$app->get('/', function (Request $request) {
$homeController = new HomeController($request);
$output = $homeController->show($request);
return new Response($output);
});
$app->run();
这是我的控制器的显示方法:
ob_start();
include "view/start.html.php";
include "view/header.html.php";
include "view/contact.html.php";
include "view/footer.html.php";
include "view/end.html.php";
return ob_end_clean();
有没有办法让它工作?
我不想将显示哪些视图的逻辑从控制器移动到 index.php。而且我暂时不想使用树枝。
这是我得到的错误:
UnexpectedValueException in Response.php line 403: The Response content must be a string or object implementing __toString(), "boolean" given.
谢谢
来自你的错误:
The Response content must be a string or object implementing __toString(), "boolean" given.
可以放心地假设您的问题是您的其中一个包含失败。来自 PHP 关于 include
的手册:
include returns FALSE on failure and raises a warning
所以您可能正在尝试包含一个不存在的文件,或者可能其中一个文件正在生成错误。
在开发环境中,您应该确保显示您的 PHP 错误(查看 this question)
您收到的错误是由于 ob_end_clean
returns a boolean (success or failure). The function you're probably looking for is ob_get_clean
.
ob_start();
include "view/start.html.php";
include "view/header.html.php";
include "view/contact.html.php";
include "view/footer.html.php";
include "view/end.html.php";
return ob_get_clean();