如何在Slim中使用MVC“View”


How to use a MVC 'View' in Slim?

$app->get('/', function () {
  // Initial page load.
  include 'body-index.php';
  return $response;
});

我的/index.php 上有上面的代码。然后,我将如何调用和修改 body-index.php 中的函数?由于我现在正在自己学习MVC和框架,我宁愿这样做,而不是脱离Slim并使用页面代码进行get('/body-index.php',。这可能吗?

谢谢。

来自 Slim Framework 文档

大多数情况下,您需要写入 PSR 7 响应对象。您可以使用其 write() 方法将内容写入 StreamInterface 实例,如下所示:

$body = $response->getBody();
$body->write('Hello');

您还可以将 PSR 7 响应对象的正文替换为全新的 StreamInterface 实例。当您想要将内容从远程目标(例如文件系统或远程 API)传输到 HTTP 响应中时,这特别有用。您可以将 PSR 7 响应对象的正文替换为其 withBody(StreamInterface $body) 方法。它的参数必须是 ''Psr''Http''Message''StreamInterface 的实例。

$newStream = new 'GuzzleHttp'Psr7'LazyOpenStream('/path/to/file', 'r');
$newResponse = $oldResponse->withBody($newStream);

来源:回应 - 苗条框架