我正在尝试解析下面的字符串...
IN.Tags.Share({"count":180,"url":"http://domain.org"}我使用下面的方法来获取count的值是否正确?
$str = 'IN.Tags.Share({"count":180,"url":"http://domain.org"}';
$data = explode(':', $str);
$val = explode(',', $data[1]);
return $val[0];或者有没有更好的方法来处理这种类型的字符串?我认为使用regex也可以做到这一点。
谢谢。
发布于 2012-03-12 06:35:28
当然,我不确定你的格式是否是恒定的,但是你的字符串的一部分看起来像JSON。如果总是这样,你可以这样做:
$str = str_replace('IN.Tags.Share(', '', $str);
$values = json_decode($str);
echo $values->count;发布于 2012-03-12 06:32:56
我建议通过将此正则表达式应用于字符串IN\.Tags\.Share\((.*)\来提取JSON。取出第一个组,并使用json_decode:http://php.net/manual/en/function.json-decode.php
这样,您就可以直接访问数据。它也将支持复杂的数据结构。
https://stackoverflow.com/questions/9659517
复制相似问题