返回响应对象和echo输出有什么区别?

时间:2015-09-12 05:07:37

标签: http httpresponse slim

在Slim Framework路由中,可以使用PHP的本机echo函数返回响应对象或echo输出。这两种方法有什么区别?

以下是每种替代方案的样本:

回复

$app->get('/hello/:name', function ($name) use ($app) {
    $response = $app->response;
    $response->setBody("Hello, " . $name);
    return $response;
});

回应输出

$app->get('/hello/:name', function ($name) use ($app) {
    echo "Hello, " . $name;
});

两者都给我相同的输出:

  

你好,世界

那我为什么要使用第一个(return $response)?

1 个答案:

答案 0 :(得分:4)

根据http://docs.slimframework.com/response/body/,根本没有区别。

如果要覆盖输出而不是附加到输出,则必须使用$response对象。 因此,出于一致性原因,您可能希望使用它?