如何在PHP中的JavaScript对象中使用base64_decode()?
如果我有一个JavaScript对象“cat”,并用btoa()对其进行编码,我可以用PHP和 访问猫的属性,如颜色等。?或者PHP只是将cat视为一个对象,但不知道它是什么类型的对象 JavaScript:如何在PHP中的JavaScript对象中使用base64_decode()?,javascript,php,base64,Javascript,Php,Base64,如果我有一个JavaScript对象“cat”,并用btoa()对其进行编码,我可以用PHP和 访问猫的属性,如颜色等。?或者PHP只是将cat视为一个对象,但不知道它是什么类型的对象 JavaScript: var cat = {color: "grey", name: "Spot", size: 46}; var base64cat = btoa(cat); PHP: btoa()的参数必须是字符串。如果你对一个对象进行编码,它首先被转换成一个字符串,所以它相当于 var base64ca
var cat = {color: "grey", name: "Spot", size: 46};
var base64cat = btoa(cat);
PHP:
btoa()
的参数必须是字符串。如果你对一个对象进行编码,它首先被转换成一个字符串,所以它相当于
var base64cat = btoa("[object Object]");
这是没有用的
您应该首先对对象进行序列化,然后对其进行编码:
var base64cat = btoa(JSON.stringify(cat));
然后在PHP中使用base64\u decode()
和json\u decode()
对其进行解码
但是,首先没有必要使用base64编码。只需发布JSON。您不能对这样的对象进行编码。它实际上是在编码字符串
“[对象]”
谢谢,这很有效!现在我可以访问诸如$cat->color等属性。
var base64cat = btoa(JSON.stringify(cat));
$cat = json_decode(base64_decode($_POST['cat']));