关于字符编码:php-base64_编码函数的真正用途是什么

PHP - What is the real use of base64_encode function

本问题已经有最佳答案,请猛点这里访问。

我一直在使用json_encode、url_encode和许多其他后缀为php encode的函数。然而,我从来没有见过真正的用例,或者至少从任何地方了解到base64_编码的作用。检查它的输出,我发现它使用字符集[A_za-z0-9]来编码数据。

1
2
3
4
5
6
7
//sample output

TWFuIGlzIGRpc3Rpbmd1aXNoZWQsIG5vdCBvbmx5IGJ5IGhpcyByZWFzb24sIGJ1dCBieSB0aGlz
IHNpbmd1bGFyIHBhc3Npb24gZnJvbSBvdGhlciBhbmltYWxzLCB3aGljaCBpcyBhIGx1c3Qgb2Yg
dGhlIG1pbmQsIHRoYXQgYnkgYSBwZXJzZXZlcmFuY2Ugb2YgZGVsaWdodCBpbiB0aGUgY29udGlu
dWVkIGFuZCBpbmRlZmF0aWdhYmxlIGdlbmVyYXRpb24gb2Yga25vd2xlZGdlLCBleGNlZWRzIHRo
ZSBzaG9ydCB2ZWhlbWVuY2Ugb2YgYW55IGNhcm5hbCBwbGVhc3VyZS4=

所以问题是。当我们已经有了大量的文本编码函数时,base64_编码的目的是解决什么问题。


有关base64_encode()的文档为您提供了答案:

This encoding is designed to make binary data survive transport
through transport layers that are not 8-bit clean, such as mail
bodies.

json_encode将值转换为json表示法,当需要将值放入URL时,使用urlencode。仅仅因为他们的名字中都有"编码"这个词,并不意味着他们之间有任何联系。