您的位置:首页 > 编程语言 > PHP开发

php使用js保存的json cookie 字符串,然后解析成数组,需要注意的事项

2010-11-26 14:52 1266 查看
json 和 字符串之间的转换, js部分

var arr_byb = [{'title':'shibaolin','age':20}];

var arr_add = {'title':'tongxin','age':21};

var new_len = arr_byb.push(arr_add);
var new_len = arr_byb.push(arr_add);

var str = json2str(arr_byb);
//var newjson = str2json(str);
// $.cookie('the_cookie', 'the_value')
//alert(newjson[0].age);
$.cookie('the_cookie',str);
function json2str(o) {
var arr = [];
var fmt = function(s) {
if (typeof s == 'object' && s != null) return json2str(s);
return /^(string|number)$/.test(typeof s) ? "'" + s + "'" : s;
}
for (var i in o) arr.push("'" + i + "':" + fmt(o[i]));
return '{' + arr.join(',') + '}';
}

function str2json(str){
return eval('('+str+')');
}


php调用js保存的cookie,然后解析

$json_str = $_COOKIE['the_cookie'];
$json_str = str_replace("'",'"',$json_str);
$json_arr = json_decode($json_str,true);

foreach($json_arr as $item):
echo $item['title'].'<br/>';
endforeach;


php解析json字符串的时候注意要将单引号转化成双引号,否则无法正常使用

然后如果想把json_decode()处理的字符串转化为数组,则json_decode的第二个参数必须使用true,否则为object
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: