code: public function sendHeaders()
      {
          // Only check if we can send headers if we have headers to send
          if (count($this->_headersRaw) || count($this->_headers) || (200 !== $this->_httpResponseCode)) {
              $this->canSendHeaders(true);
          } elseif (200 === $this->_httpResponseCode) {
              // Haven't changed the response code, and we have no headers
              return $this;
          }
  
          $httpCodeSent = false;
  
          foreach ($this->_headersRaw as $header) {
              if (!$httpCodeSent && $this->_httpResponseCode) {
                  header($header, true, $this->_httpResponseCode);
                  $httpCodeSent = true;
              } else {
                  header($header);
              }
          }
  
          foreach ($this->_headers as $header) {
              header("{$header['name']}: {$header['value']}", $header['replace']);
          }
  
          if (!$httpCodeSent) {
              $message = array_key_exists($this->_httpResponseCode, self::$_messages)
                  ? self::$_messages[$this->_httpResponseCode]
                  : 'No Reason Phrase';
  
              header("HTTP/1.1 {$this->_httpResponseCode} {$message}", true);
              $httpCodeSent = true;
          }
  
          return $this;
      }
docs: Send all headers.
  
  Sends any headers specified. If an HTTP response code has been
  specified, it is sent with the first header.
  
  @return Benri_Controller_Response_Http