Example #1
0
 /**
  * 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;
 }