2016-09-05 4 views
-2

Я использую json_encode, url_encode и многие другие функции, суффиксные с кодировкой в ​​php. Тем не менее, я никогда не видел реального варианта использования или, по крайней мере, нигде не узнаю, что делает base64_encode. Проверяя его вывод, я понимаю, что для кодирования данных он использует набор символов [A_Za-z0-9].PHP - Что такое использование функции base64_encode

//sample output 

TWFuIGlzIGRpc3Rpbmd1aXNoZWQsIG5vdCBvbmx5IGJ5IGhpcyByZWFzb24sIGJ1dCBieSB0aGlz 
IHNpbmd1bGFyIHBhc3Npb24gZnJvbSBvdGhlciBhbmltYWxzLCB3aGljaCBpcyBhIGx1c3Qgb2Yg 
dGhlIG1pbmQsIHRoYXQgYnkgYSBwZXJzZXZlcmFuY2Ugb2YgZGVsaWdodCBpbiB0aGUgY29udGlu 
dWVkIGFuZCBpbmRlZmF0aWdhYmxlIGdlbmVyYXRpb24gb2Yga25vd2xlZGdlLCBleGNlZWRzIHRo 
ZSBzaG9ydCB2ZWhlbWVuY2Ugb2YgYW55IGNhcm5hbCBwbGVhc3VyZS4= 

Так что вопрос. То, что base64_encode стремится решить, когда у нас уже есть множество функций кодирования текста.

+1

Я видел, что он использовался в API-интерфейсах платежных шлюзов (BarclayCard SmartPay IIRC), чтобы сделать своего рода дайджест сообщения о транзакции (в сочетании с секретным ключом), который вы затем отправляете POST им с помощью cURL. – CD001

ответ

2

Документация по base64_encode() дает ответ:

Эта кодировка предназначена, чтобы сделать двоичные данные выживания транспорта через транспортные слои, которые не являются 8-битными, такие как почта тел.

json_encode преобразует значения в JSON нотации и urlencode используется, когда вам нужно поместить значения внутри URL. Только потому, что все они имеют слово encode в их именах не означает, что они связаны каким-либо образом.

Смежные вопросы