字符串看起来像这样。
string(202)
"{"_id":"2","_rev":"2-2251dd9912477d8a2b91c6fd5ce62faf","_attachments":{"creativecommons.pdf":{"content_type":"text/pdf","revpos":2,"digest":"md5-AyV8c76dsfqfGF1BBdQIIw==","length":280357,"stub":true}}} `
我想preg_match_all是一种方法,但我还不知道它的语法。 Maby还有另一种方式。一些帮助将不胜感激。
答案 0 :(得分:1)
您的字符串是JSON字符串。 “Prettified”它看起来像这样:
{
"_id": "2",
"_rev": "2-2251dd9912477d8a2b91c6fd5ce62faf",
"_attachments": {
"creativecommons.pdf": {
"content_type": "text/pdf",
"revpos": 2,
"digest": "md5-AyV8c76dsfqfGF1BBdQIIw==",
"length": 280357,
"stub": true
}
}
}
您可以使用json_decode($JSONstring, true);
使其成为多维数组:
$decoded = json_decode($JSONstring, true);
$myLengthValue = $decoded['_attachments']['creativecommons.pdf']['length'];
echo $myLengthValue; //Returns 280357
答案 1 :(得分:-1)
preg_match应该这样做
语法为preg_match('/length":(.*),/', $string, $array);
preg_match会将结果放入数组中,所以在这种情况下:
$array[0]
应为'length':280357,;',
$array[1]
应为'280357'