getHeaders()) && is_array($emitter->getHeaders())) { foreach ($emitter->getHeaders() as $name => $values) { $response->header($name, implode(';', $values)); } } if (!empty($emitter->getCookies()) && is_array($emitter->getCookies())) { foreach ($emitter->getCookies() as $name => $cookie) { $response->cookie($name, ...$cookie); } } $response->setStatusCode($emitter->getStatusCode()); $response->header('Run-Time', sprintf('%.5f', $this->getRunTime())); $response->end($emitter->getBody()); } /** * @return float */ private function getRunTime(): float { return microtime(true) - $this->request->getStartTime(); } }