Yaf_Dispatcher::returnResponse
(Since Yaf 1.0.0.5)
public void Yaf_Dispatcher::returnResponse( boolean $switch );
是否返回Response对象, 如果启用, 则Response对象在分发完成以后不会自动输出给请求端, 而是交给程序员自己控制输出.
例 11.22. Yaf_Dispatcher::returnResponse的例子
<?php
$application = new Yaf_Application("config.ini");
/* 关闭自动响应, 交给rd自己输出*/
$response =
$application->getDispatcher()->returnResponse(TRUE)->getApplication()->run();
/** 输出响应*/
$response->response();
?>
![]() |
注意 |
|---|---|
| 如果不传递$switch参数, 本方法返回当前的返回响应状态. |
开启以后, $response = $application->run()将得到Yaf_Response_Abstract实例, 可以对其做进一步处理,
例如设置响应头后再手动输出:
例 11.22.1. 对返回的Response对象做进一步处理的例子
<?php
$app = new Yaf_Application(dirname(__FILE__) . "/conf/application.ini");
Yaf_Dispatcher::getInstance()->returnResponse(TRUE);
/* 现在$app->run()会返回响应而不是直接输出 */
$response = $app->run();
$response->setHeader("X-Generator", "Yaf");
$response->response();
?>