我正在使用php邮件发送附件。当谷歌上面发现时,我发现chunk_split()
和base64_encode()
的组合正在邮件标题中使用。
此处base64_encode($data)
函数将给定数据编码为编码字符串。但是chunk_split()
和base64_enocde()
一起使用的是什么,因为chunk_split
需要三个参数(即将要修改的字符串,块长度以及要在末尾添加的参数)块),但我们只提供一个参数。
我认为当我们只提供一个参数时,chunk_split()
会返回相同的字符串(我的意思是chuck_split("mystr") == "mystr"
)。那么chunk_split(base64_encode("mystr"));
的用途是什么?
答案 0 :(得分:0)
base64_encode()
函数对于较大的文件失败,对于我来说,对于大于7 mb的图像,则失败。
Chunk_split
可用于将字符串拆分为较小的块,这对于例如转换base64_encode()
的输出以匹配RFC 2045
的语义。
它在每个chunklen字符(默认为76)中插入end(默认为\r\n
)。它返回新字符串,而原始字符串保持不变。
因此,这里的组合允许匹配使用RFC
语义进行确认的字符串,该字符串用于发送除文本之外的数据内容,可能是图像或使用mime协议的邮件附件。