2009-06-12 9 views
-1

Je tente de sortir le corps du message des messages récupérés sur mon serveur imap, en utilisant la classe ezcMailImapTransport de eZ Components.Sortie du corps du message à partir d'eZ Components Objet ezcMailMultipartReport

Je peux me connecter et récupérer tous les messages, mais je n'arrive pas à comprendre comment sortir le corps du message.

La sortie de print_r($mail[0]->body); est ci-dessous. Je ne sais pas comment gérer un objet comme celui-ci.

Le message lui-même est un avis de rebond d'email.

ezcMailMultipartReport Object 
(
    [parts:protected] => Array 
     (
      [0] => ezcMailText Object 
       (
        [headers:private] => ezcMailHeadersHolder Object 
         (
          [lookup:private] => Array 
           (
            [content-description] => Content-Description 
            [content-type] => Content-Type 
           ) 

          [map:private] => Array 
           (
            [Content-Description] => Notification 
            [Content-Type] => text/plain; charset=us-ascii 
           ) 

         ) 

        [headerCharsets:private] => Array 
         (
          [Content-Description] => us-ascii 
          [Content-Type] => us-ascii 
         ) 

        [excludeHeaders:private] => Array 
         (
         ) 

        [properties:protected] => Array 
         (
          [text] => This is the mail system at host example.com. 

I'm sorry to have to inform you that your message could not 
be delivered to one or more recipients. It's attached below. 

For further assistance, please send mail to postmaster. 

If you do so, please include this problem report. You can 
delete your own text from the attached returned message. 

        The mail system 

: Host or domain name not found. Name service error for 
    name=lskjsdf.com type=A: Host not found 

          [charset] => utf-8 
          [encoding] => 8bit 
          [subType] => plain 
          [originalCharset] => us-ascii 
          [size] => 501 
         ) 

       ) 

      [1] => ezcMailDeliveryStatus Object 
       (
        [headers:private] => ezcMailHeadersHolder Object 
         (
          [lookup:private] => Array 
           (
           ) 

          [map:private] => Array 
           (
           ) 

         ) 

        [headerCharsets:private] => Array 
         (
         ) 

        [excludeHeaders:private] => Array 
         (
         ) 

        [properties:protected] => Array 
         (
          [message] => ezcMailHeadersHolder Object 
           (
            [lookup:private] => Array 
             (
              [reporting-mta] => Reporting-MTA 
              [x-postfix-queue-id] => X-Postfix-Queue-ID 
              [x-postfix-sender] => X-Postfix-Sender 
              [arrival-date] => Arrival-Date 
             ) 

            [map:private] => Array 
             (
              [Reporting-MTA] => dns; example.com 
              [X-Postfix-Queue-ID] => 78A6E92D38 
              [X-Postfix-Sender] => rfc822; [email protected] 
              [Arrival-Date] => Fri, 12 Jun 2009 17:43:07 -0400 (EDT) 
             ) 

           ) 

          [recipients] => ArrayObject Object 
           (
            [0] => ezcMailHeadersHolder Object 
             (
              [lookup:private] => Array 
               (
                [final-recipient] => Final-Recipient 
                [original-recipient] => Original-Recipient 
                [action] => Action 
                [status] => Status 
                [diagnostic-code] => Diagnostic-Code 
               ) 

              [map:private] => Array 
               (
                [Final-Recipient] => rfc822; [email protected] 
                [Original-Recipient] => rfc822;[email protected] 
                [Action] => failed 
                [Status] => 5.4.4 
                [Diagnostic-Code] => X-Postfix; Host or domain name not found. Name service error for name=lskjsdf.com type=A: Host not found 

               ) 

             ) 

           ) 

          [size] => 431 
         ) 

       ) 

      [2] => ezcMailRfc822Digest Object 
       (
        [headers:private] => ezcMailHeadersHolder Object 
         (
          [lookup:private] => Array 
           (
            [content-type] => Content-Type 
            [content-disposition] => Content-Disposition 
           ) 

          [map:private] => Array 
           (
            [Content-Type] => message/rfc822 
            [Content-Disposition] => inline 
           ) 

         ) 

        [headerCharsets:private] => Array 
         (
          [Content-Type] => us-ascii 
          [Content-Disposition] => us-ascii 
         ) 

        [excludeHeaders:private] => Array 
         (
         ) 

        [properties:protected] => Array 
         (
          [mail] => ezcMail Object 
           (
            [headers:private] => ezcMailHeadersHolder Object 
             (
              [lookup:private] => Array 
               (
                [received] => Received 
                [dkim-signature] => DKIM-Signature 
                [domainkey-signature] => DomainKey-Signature 
                [from] => From 
                [to] => To 
                [subject] => Subject 
                [mime-version] => MIME-Version 
                [user-agent] => User-Agent 
                [date] => Date 
                [message-id] => Message-Id 
                [content-type] => Content-Type 
                [content-transfer-encoding] => Content-Transfer-Encoding 
               ) 

              [map:private] => Array 
               (
                [Received] => from localhost (example.com [127.0.0.1]) by example.com (Postfix) with ESMTP id 51C3192D2A for ; Fri, 12 Jun 2009 17:43:07 -0400 (EDT) 
                [DKIM-Signature] => v=1; a=rsa-sha1; c=relaxed; d=example.com; h=from:to :subject:mime-version:date:message-id:content-type :content-transfer-encoding; s=qs762.1; bh=o1jS7VG7S60y5SvP5lioDm 5B7VY=; b=Bojv0GjNWsHTRyiKZ631bvWczjntEJZsegrsU2tt/1EI4KVQnRXmT+ u4oX6cQTpPK2xxZfiZ3BymPsoOD3weKSFmdwDOEUB4vEDdG+Bx697345c+KaSpdw IlJh2o3x0Zus/Ov8xRelHX+/6sklnN1GDllEQV2JlcKdKxR+fUrOQ= 
                [DomainKey-Signature] => a=rsa-sha1; c=nofws; d=example.com; h=from:to :subject:mime-version:date:message-id:content-type :content-transfer-encoding; q=dns; s=qs762.1; b=HHzMU01/vNx4dBL5 OKyfxQzKytIIJB4KGhKWfFpSdsNNMPwCjrnRthz0wR4wqSgMIDmGobYOLujHekwM 1lLOAnMEQrXRWYHaIHBNIIrxemq1btuiMe8zNKEG3X/wSmYQE3xzInwPurB9iLAa Rjie7bJgTk0Tg+x54hav6l464Ok= 
                [From] => Example From 
                [To] => Ian Cook 
                [Subject] => ezmail test 14:43:07 
                [MIME-Version] => 1.0 
                [User-Agent] => eZ Components 
                [Date] => Fri, 12 Jun 2009 14:43:07 -0700 
                [Message-Id] => <[email protected]> 
                [Content-Type] => text/plain; charset=us-ascii 
                [Content-Transfer-Encoding] => quoted-printable 
               ) 

             ) 

            [headerCharsets:private] => Array 
             (
              [Received] => us-ascii 
              [DKIM-Signature] => us-ascii 
              [DomainKey-Signature] => us-ascii 
              [From] => us-ascii 
              [To] => us-ascii 
              [Subject] => us-ascii 
              [MIME-Version] => us-ascii 
              [User-Agent] => us-ascii 
              [Date] => us-ascii 
              [Message-Id] => us-ascii 
              [Content-Type] => us-ascii 
              [Content-Transfer-Encoding] => us-ascii 
             ) 

            [excludeHeaders:private] => Array 
             (
             ) 

            [properties:protected] => Array 
             (
              [from] => ezcMailAddress Object 
               (
                [name] => Example From 
                [email] => [email protected] 
                [charset] => utf-8 
               ) 

              [to] => Array 
               (
                [0] => ezcMailAddress Object 
                 (
                  [name] => Ian Cook 
                  [email] => [email protected] 
                  [charset] => utf-8 
                 ) 

               ) 

              [cc] => Array 
               (
               ) 

              [bcc] => Array 
               (
               ) 

              [subject] => ezmail test 14:43:07 
              [subjectCharset] => utf-8 
              [body] => ezcMailText Object 
               (
                [headers:private] => ezcMailHeadersHolder Object 
                 (
                  [lookup:private] => Array 
                   (
                    [content-type] => Content-Type 
                    [content-transfer-encoding] => Content-Transfer-Encoding 
                   ) 

                  [map:private] => Array 
                   (
                    [Content-Type] => text/plain; charset=us-ascii 
                    [Content-Transfer-Encoding] => quoted-printable 
                   ) 

                 ) 

                [headerCharsets:private] => Array 
                 (
                  [Content-Type] => us-ascii 
                  [Content-Transfer-Encoding] => us-ascii 
                 ) 

                [excludeHeaders:private] => Array 
                 (
                 ) 

                [properties:protected] => Array 
                 (
                  [text] => Test mail sent at 14:43:07 

                  [charset] => utf-8 
                  [encoding] => 8bit 
                  [subType] => plain 
                  [originalCharset] => us-ascii 
                  [size] => 27 
                 ) 

               ) 

              [messageId] => <[email protected]> 
              [returnPath] => 
             ) 

           ) 

          [size] => 1473 
         ) 

       ) 

     ) 

    [headers:private] => ezcMailHeadersHolder Object 
     (
      [lookup:private] => Array 
       (
        [content-type] => Content-Type 
       ) 

      [map:private] => Array 
       (
        [Content-Type] => multipart/report; boundary="78A6E92D38.1244842987/example.com" 
       ) 

     ) 

    [headerCharsets:private] => Array 
     (
      [Content-Type] => us-ascii 
     ) 

    [excludeHeaders:private] => Array 
     (
     ) 

    [properties:protected] => Array 
     (
      [noMimeMessage] => This message is in MIME format. Since your mail reader does not understand 
this format, some or all of this message may not be legible. 
      [boundary] => 78A6E92D38.1244842987/example.com 
      [reportType] => delivery-status 
      [size] => 2405 
     ) 

) 
+0

Mettre tout le vidage d'une variable est juste paresseux. Les gens ne se soucient pas de tout cela car cela n'aide pas et, en fait, empêche toute aide qu'ils peuvent offrir. Veuillez vous assurer que votre question sera dorénavant réduite à un minimum d'informations qui doivent être examinées pour aider d'autres personnes à vous aider. –

+0

J'ai mis toute la décharge pour que je puisse donner à tout le monde des informations exactes sur l'objet auquel je m'occupais. Je ne sais pas comment manipuler l'objet, donc je ne sais pas ce qu'une personne aurait besoin de savoir pour répondre à ma question. – Ian

Répondre

1

Je ne pas utiliser les ezcomponents, mais avez-vous regardé http://ezcomponents.org/docs/api/trunk/Mail/ezcMailMultipartReport.html#getParts faire quelque chose comme:

$parts = $mail->getParts(); 
print_r($parts); // or 
print_r($parts[0]->body); // (untested) 

ezcMailMultipartReport est juste une sous-classe de ezcMailMultipart, et donc toutes les actions qui peuvent prendre (ou son propre parent, ezcMailPart), sont disponibles.

+0

Merci, cela l'a fait ... $ part = $ mail [$ i] -> body-> getParts(); print_r ($ part [0] -> text); – Ian

Questions connexes