Array HHVM_FUNCTION(apache_response_headers) { Transport *transport = g_context->getTransport(); if (transport) { HeaderMap headers; transport->getResponseHeaders(headers); return get_headers(headers); } return empty_array(); }
Array f_apache_response_headers() { Transport *transport = g_context->getTransport(); if (transport) { HeaderMap headers; transport->getResponseHeaders(headers); Array ret; for (auto iter = headers.begin(); iter != headers.end(); ++iter) { const auto& values = iter->second; ret.set(String(iter->first), String(values.back())); } return ret; } return Array(); }
Array HHVM_FUNCTION(headers_list) { Transport *transport = g_context->getTransport(); Array ret = Array::Create(); if (transport) { HeaderMap headers; transport->getResponseHeaders(headers); for (HeaderMap::const_iterator iter = headers.begin(); iter != headers.end(); ++iter) { const std::vector<std::string> &values = iter->second; for (unsigned int i = 0; i < values.size(); i++) { ret.append(String(iter->first + ": " + values[i])); } } } return ret; }