PHP imap_主体到数组

PHP imap_主体到数组,php,arrays,base64,imap,Php,Arrays,Base64,Imap,我想用imap\u body创建一个附件文件数组。这是如何获取imap\u主体的示例: --001a11c2a20cbdfb1c04f7653888 Content-Type: multipart/alternative; boundary=001a11c2a20cbdfb1b04f7653887 --001a11c2a20cbdfb1b04f7653887 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: b

我想用
imap\u body
创建一个附件文件数组。这是如何获取
imap\u主体的示例:

--001a11c2a20cbdfb1c04f7653888
Content-Type: multipart/alternative; boundary=001a11c2a20cbdfb1b04f7653887

--001a11c2a20cbdfb1b04f7653887
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: base64

bmV3IHRlc3QNCg0KcmVkIGlzIGZpcnN0DQoNCltpbWFnZTog16rXnteV16DXlCDXnteV15jXkdei
16ogMV0NCg0KDQp0aGFuIGdvZXMgYmxhY2sNCg0KW2ltYWdlOiDXqtee15XXoNeUINee15XXmNeR
16LXqiAyXQ0KDQphbmQgdGhhbiByb2kNCg0KW2ltYWdlOiDXqtee15XXoNeUINee15XXmNeR16LX
qiAzXQ0K
--001a11c2a20cbdfb1b04f7653887
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

new test
=
red is first

3D"=D7=AA=D7=9E=D7=95=D7=A0=D7=

than goes black

3D"=D7=AA=D7=9E=D7=95=D7=A0=D7=94
and than roi

--001a11c2a20cbdfb1b04f7653887--
--001a11c2a20cbdfb1c04f7653888
Content-Type: image/jpeg; name="black.jpeg"
Content-Disposition: inline; filename="black.jpeg"
Content-Transfer-Encoding: base64
Content-ID: 
X-Attachment-Id: ii_1457a2ac29603915

/9j/4AAQSkZJRgABAQEBLAEsAAD/4gxYSUNDX1BST0ZJTEUAAQEAAAxITGlubwIQAABtbnRyUkdC
IFhZWiAHzgACAAkABgAxAABhY3NwTVNGVAAAAABJRUMgc1JHQgAAAAAAAAAAAAAAAAAA9tYAAQAA
AADTLUhQICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABFj
cHJ0AAABUAAAADNkZXNjAAABhAAAAGx3dHB0AAAB8AAAABRia3B0AAACBAAAABRyWFlaAAACGAAA
.....
.....the base 64 is very long so i cut it for the example
.....
M2bDL8tmi/skEPyQzb/9KF/ZoIfkbm1/6OL+yQT/ACQzb/8AShf2a8xH9/JLN/8A9MD/AGa9D8ks
3/8A0wP9mg/v5K2F/wCnC/s0EvyZsT/04P8AZoJfk5ZH+xM/cgmOxbLHk/Mh/uQTyWfDH8gUGSgL
0OT96CdNnVyIP6gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIP//Z
--001a11c2a20cbdfb1c04f7653888
Content-Type: image/jpeg; name="red.jpeg"
Content-Disposition: inline; filename="red.jpeg"
Content-Transfer-Encoding: base64
Content-ID: 
X-Attachment-Id: ii_1457a2a811de3322

/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAIBAQEBAQIBAQECAgICAgQDAgICAgUEBAMEBgUGBgYF
BgYGBwkIBgcJBwYGCAsICQoKCgoKBggLDAsKDAkKCgr/2wBDAQICAgICAgUDAwUKBwYHCgoKCgoK
CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgr/wAARCAHNAmcDAREA
.....
..... again the base 64 is long so i cut it for the example
.....
QBAEAQBAEAQBAEAQBAEAQBAf/9k=
--001a11c2a20cbdfb1c04f7653888
Content-Type: image/jpeg; name="roi.jpg"
Content-Disposition: inline; filename="roi.jpg"
Content-Transfer-Encoding: base64
Content-ID: 
X-Attachment-Id: ii_1457a2aef606ba6d

/9j/4AAQSkZJRgABAgAAAQABAAD//gAEKgD/4gIcSUNDX1BST0ZJTEUAAQEAAAIMbGNtcwIQAABt
bnRyUkdCIFhZWiAH3AABABkAAwApADlhY3NwQVBQTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
9tYAAQAAAADTLWxjbXMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAApkZXNjAAAA/AAAAF5jcHJ0AAABXAAAAAt3dHB0AAABaAAAABRia3B0AAABfAAAABRyWFla
...
....
.... the end look like this
pgaKQVBLlxaYlxXSPEQiyvtAWclft/Mdo/M1y6Z0e8UZncAksFR+JYqv4ndXfiIc/ggxf6Ubq/Sm
C/0oX/xQRj8ENoxPX4oAdPxCjRUuXiOF3LzFcS25pwbFcPN1CLw8o32RWQZpGDKtbGyOoizQ4hWZ
tNSefA3NzSDcrMHC47gog4WZpN49zVmz1f/Z
--001a11c2a20cbdfb1c04f7653888--
我构建了一个将内容解码为utf-8的函数。现在,我只需要将图像替换为base64。现在看起来是这样的:

<img src="cid:ii_1457a2ac29603915" />
and i want to replace it like this
<img src="data:image/jpeg;base64,...." />
Array
(
    [0] => Array
        (
            [filename] => black.jpeg
            [cid] => ii_1457a2ac29603915
            [Content-Disposition] => inline
            [encoding] => base64 (get it from "Content-Transfer-Encoding")
            (
                [file] => the base 64 of the file / image
            ) 
        )

    [1] => Array
        (
            [filename] => red.jpeg
            [cid] => ii_1457a2a811de3322
            [Content-Disposition] => inline
            [encoding] => base64 (get it from "Content-Transfer-Encoding")
            (
                [file] => the base 64 of the file / image
            ) 
        )

    [2] => Array
        (
            [filename] => roi.jpg
            [cid] => ii_1457a2aef606ba6d
            [Content-Disposition] => inline
            [encoding] => base64 (get it from "Content-Transfer-Encoding")
            (
                [file] => the base 64 of the file / image
            ) 
        )
)

好的,你要取回整个身体[],然后把它分开,看看每个部分。为什么这样做而不是单独检索每个零件,即主体[1]、主体[2]和主体[3]?Fetch bodystructure将为您提供内容类型等@arnt no我只想获得一个包含附件文件详细信息的数组,然后我将使用str_replace,其中cid等于数组中的cid,因此将其替换为图像的base64 |编辑:我使用bodystructure,但它不会给我“cid”