实际上我想将json数组转换为字符串,因为我使用了json_decode,但它什么都没有返回怎么解决这个问题?
下面是我的数组,
[{"Product":"Fantasy Brown","productimage":"images/fantasy-brown.jpg"},{"Product":"Bruno White","productimage":"images/bruno-white.jpg"},{"Product":"Barcunda Black","productimage":"images/barcunda-black.jpg"},{"Product":"Iceberg","productimage":"images/iceberg.jpg"},{"Product":"Mercury White","productimage":"images/mercury-white.jpg"},{"Product":"Desert Brown","productimage":"images/desert-brown.jpg"},{"Product":"Blue Venatino","productimage":"images/blue-venatino-marble.jpg"}]
上面的数组应该转换为字符串,我也希望从该数组中以字符串格式显示产品和产品图像。
以下是我的代码,
$cart_items = "<script>document.write(localStorage.getItem('cart'));</script>";
echo "<pre>";
print_r($cart_items);
die;
$details = json_decode($cart_items);
// $x = $cart_items[];
echo $details;die;
答案 0 :(得分:1)
你的代码不起作用。您正在以错误的方式混合客户端和服务器端编程。
从服务器的角度来看,$cart_items
只是一个包含以下内容的字符串:
<script>document.write(localStorage.getItem('cart'));</script>
没有更多。
您的浏览器将服务器输出(即Javascript)解析为JSON字符串。由于转换仅发生在浏览器端,因此服务器端(即您的PHP脚本)无法获得它。
您需要重新考虑您的代码逻辑。也许你需要有javascript将localStorage内容提交给服务器。或者也许只用Javascript解决您的问题。
答案 1 :(得分:0)
你们都需要设置json_decode()'true',即
$details = json_decode($cart_items,true);