chunk_split()和base64_encode()组合的用途是什么

时间:2015-04-06 19:15:23

标签: php base64

我正在使用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"));的用途是什么?

1 个答案:

答案 0 :(得分:0)

base64_encode()函数对于较大的文件失败,对于我来说,对于大于7 mb的图像,则失败。

Chunk_split可用于将字符串拆分为较小的块,这对于例如转换base64_encode()的输出以匹配RFC 2045的语义。

它在每个chunklen字符(默认为76)中插入end(默认为\r\n)。它返回新字符串,而原始字符串保持不变。 因此,这里的组合允许匹配使用RFC语义进行确认的字符串,该字符串用于发送除文本之外的数据内容,可能是图像或使用mime协议的邮件附件。