/** * Parse headers and raw body-data from raw message. * * @param string||array $lines * @return instance of MailMessage */ public static function &parse($lines) { $instance = new self(); if ($lines == null) { return; } if (is_string($lines)) { $lines = explode("\r\n", $lines); } if (!is_array($lines)) { return; } // // Parse Header Part // $headers = $instance->parseHeader($lines); foreach ($headers as $k => $v) { $instance->{$k} = $v; } // // Body // $instance->raw_body = trim(join("\r\n", $lines)); return $instance; }