object
imap_fetchstructure
(int imap_stream, int msg_number, int
[flags]
);This function fetches all the structured information for a given message. The optional flags parameter only has a single option, FT_UID, which tells the function to treat the msg_number argument as a UID. The returned object includes the envelope, internal date, size, flags and body structure along with a similar object for each mime attachement. The structure of the returned objects is as follows:
Table 1. Returned Objects for imap_fetchstructure()
| type | Primary body type |
| encoding | Body transfer encoding |
| ifsubtype | True if there is a subtype string |
| subtype | MIME subtype |
| ifdescription | True if there is a description string |
| description | Content description string |
| ifid | True if there is an identification string |
| id | Identification string |
| lines | Number of lines |
| bytes | Number of bytes |
| ifdisposition | True if there is a disposition string |
| disposition | Disposition string |
| ifdparameters | True if the dparameters array exists |
| dparameters [a] | Disposition parameter array |
| ifparameters | True if the parameters array exists |
| parameters [b] | MIME parameters array |
| parts [c] | Array of objects describing each message part |
| Notes: a dparameters is an array of objects where each object has an "attribute" and a "value" property. b Parameter is an array of objects where each object has an "attributte" and a "value" property. c Parts is an array of objects identical in structure to the top-level object, with the limitation that it cannot contain further 'parts' objects. | |
Table 2. Primary body type
| 0 | text |
| 1 | multipart |
| 2 | message |
| 3 | application |
| 4 | audio |
| 5 | image |
| 6 | video |
| 7 | other |
Table 3. Transfer encodings
| 0 | 7BIT |
| 1 | 8BIT |
| 2 | BINARY |
| 3 | BASE64 |
| 4 | QUOTED-PRINTABLE |
| 5 | OTHER |