php json_encode如何使用" "而不是" +"在文本字符串?

时间:2015-06-03 13:30:12

标签: javascript php json

我在JS中将对象数组编码为cookie:

prod.name = name;
prod.id = id;
prod.price = cost;
prod.quantity = 1;
Products = [prod];
Cookies.set('cart', Products);

名称看起来像"Some product name",但是当我从PHP做同样的事情时:

setcookie('products', json_encode($Products));

我的名字就像"一些+产品+名称" - 有什么方法可以避免它,或唯一的方法是str_replace() + with " "(什么是主题的unicode模拟)?

UPD。简单来说:

如果我setcookie ('cartNew', json_encode(['name' => "Some product name"])); - 在Cookie中我看到" +",并且JS将其解码为" +"。 Cookie就像%7B%22name%22%3A%22Some+product+name%22%7D - firefox。我也使用UTF-8和php 5.4

1 个答案:

答案 0 :(得分:-1)

使用RegEx替换来消除额外的'+':

prod.name = name.replace(/\+/g, "");