函數(shù)名稱:EventHttpRequest::getOutputHeaders()
適用版本:任意版本的 PHP (PHP 以及 PECL event >= 1.2.6)
用法:該函數(shù)用于獲取當(dāng)前 EventHttpRequest 對象的輸出標頭。輸出標頭包含響應(yīng)的信息,如響應(yīng)碼、內(nèi)容類型、日期等。
示例:
// 創(chuàng)建 EventHttpRequest 對象
$request = new EventHttpRequest(function () {});
// 設(shè)置響應(yīng)頭信息
$request->addOutputHeader("Content-Type", "application/json");
$request->addOutputHeader("Content-Length", "1024");
$request->addOutputHeader("Date", gmdate('D, d M Y H:i:s') . ' GMT');
// 獲取輸出標頭
$outputHeaders = $request->getOutputHeaders();
// 打印輸出標頭
foreach ($outputHeaders as $header => $value) {
echo $header . ": " . $value . PHP_EOL;
}
輸出:
Content-Type: application/json
Content-Length: 1024
Date: Sat, 26 Jun 2021 10:30:00 GMT
注意事項:
- EventHttpRequest::getOutputHeaders() 必須在 EventHttp::REQUEST_HEADERS 回調(diào)函數(shù)中調(diào)用,否則將返回空數(shù)組。
- 輸出標頭是在發(fā)送響應(yīng)之前設(shè)置的,可以使用 EventHttpRequest::addOutputHeader() 方法進行添加。
- 如果使用 EventHttpRequest::addOutputBuffer() 的話,添加的輸出緩沖區(qū)將在 EventHttpRequest::sendReply() 方法被調(diào)用時被發(fā)送,而不是直接發(fā)送輸出頭部信息。因此,在 EventHttpRequest::sendReply() 方法被調(diào)用后,EventHttpRequest::getOutputHeaders() 返回的將是空數(shù)組。