[英]How do I base64_decode() in a JavaScript object in PHP?
如果我有一个 JavaScript object “cat”并用 btoa() 对其进行编码,我可以在 PHP 中对其进行 base64_decode() 并访问颜色等属性吗? 还是 PHP 只是将猫视为 object 但不知道它是哪种 object?
JavaScript:
var cat = {color: "grey", name: "Spot", size: 46};
var base64cat = btoa(cat);
PHP:
$cat = base64_decode($_POST['cat']);
btoa()
的参数需要是一个字符串。 如果你编码一个 object,它首先被转换成一个字符串,所以它相当于
var base64cat = btoa("[object Object]");
这是没有用的。
您应该首先对 object 进行序列化,然后对其进行编码:
var base64cat = btoa(JSON.stringify(cat));
然后在 PHP 中解码它,你使用base64_decode()
和json_decode()
。
$cat = json_decode(base64_decode($_POST['cat']));
但是首先没有真正需要使用 base64 编码。 只需发布 JSON。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.