+ list( $key, $val ) = array_map( 'trim', explode( ":", $string, 2 ) );
+
+ if( $replace || !isset( $this->headers[$key] ) ) {
+ $this->headers[$key] = $val;
+ }
+ }
+
+ if ( $http_response_code !== null ) {
+ $this->code = intval( $http_response_code );
+ }
+ }
+
+ /**
+ * @param $key string
+ * @return string
+ */
+ public function getheader( $key ) {
+ if ( isset( $this->headers[$key] ) ) {
+ return $this->headers[$key];
+ }
+ return null;
+ }
+
+ /**
+ * Get the HTTP response code, null if not set
+ *
+ * @return Int or null
+ */
+ public function getStatusCode() {
+ return $this->code;
+ }
+
+ /**
+ * @param $name String: name of cookie
+ * @param $value String: value to give cookie
+ * @param $expire Int: number of seconds til cookie expires
+ */
+ public function setcookie( $name, $value, $expire = 0, $prefix = null, $domain = null ) {
+ $this->cookies[$name] = $value;
+ }
+
+ /**
+ * @param $name string
+ * @return string
+ */
+ public function getcookie( $name ) {
+ if ( isset( $this->cookies[$name] ) ) {
+ return $this->cookies[$name];