使用 php 访问维基百科 json
Accessing wikipedia json with php
我一直在尝试访问维基百科 json 数据 php.Here 是 json。
{
"query": {
"normalized": [
{
"from": "နေဝင်း၊_ကောလိပ်ဂျင်",
"to": "နေဝင်း၊ ကောလိပ်ဂျင်"
}
],
"pages": {
"7037": {
"pageid": 7037,
"ns": 0,
"title": "နေဝင်း၊ ကောလိပ်ဂျင်",
"revisions": [
{
"user": "Mayor mt",
"timestamp": "2015-04-04T06:30:59Z",
"comment": "\/* ကောလိပ်ဂျင် *\/",
"contentformat": "text\/x-wiki",
"contentmodel": "wikitext",
"*": "{| border=\"0\" cellpadding=\"2\" style=\"margin:7px;width: 20em; font-size: 90%; text-align: left; float:right; border:1px solid #5BBFF4; background-color:#FDE4FE;\"\n|-\n| colspan=\"2\" style=\"text-align: center; font-size: 130%; font-weight: bold;\" | ကောလိပ်ဂျင်နေဝင်း\n|-\n| colspan=\"2\" style=\"text-align: center;\" |[[File:CLJ.jpg|180px]]\n\n|-valign=\"top\"\n| '''မွေးသက္ကရာဇ်'''\n| ၁-၁၀-၁၉၂၈\n\n|-valign=\"top\"\n| '''မိဘအမည်'''\n| ဦးသက်ဖေ+ဒေါ်တင် \n\n|-valign=\"top\"\n| '''အမည်ရင်း'''\n| နေဝင်း\n\n|-valign=\"top\"\n| '''နိုင်ငံ'''\n|[[File:Flag of Myanmar.svg|25px ]] မြန်မာ\n\n|-valign=\"top\"\n| '''ပညာအရည်အချင်း'''\n| \n\n|-valign=\"top\"\n|'''အလုပ်အကိုင်'''\n| ရုပ်ရှင်သရုပ်ဆောင်\n\n|-valign=\"top\"\n|'''ထင်ရှားကျော်ကြားမှု'''\n| ထူးခြားစွာ ရုပ်ရှင်သရုပ်ဆောင်နိုင်သူ၊ စကားပြောကောင်းသူ၊ ဘောလုံးသမား \n\n|-valign=\"top\"\n| '''ကိုးကွယ်သည့်ဘာသာ'''\n| ခရစ်ယာန်\n\n|}\n== ကောလိပ်ဂျင်နေဝင်း(၁၉၂၈-၁၉၈၃) ==\n'''ကောလိပ်ဂျင်နေဝင်း'''ကို ၁-၁၀-၂၈ ရက်နေ့တွင် ဟင်္သာတမြို့၌
我知道如何访问 xml tags.But Json 中的数据me.I 用 php 解码 json 并尝试访问喜欢
var_dump ($dj->query->pages);
输出为
object(stdClass)[4]
public '7037' =>
object(stdClass)[5]
public 'pageid' => int 7037
public 'ns' => int 0
public 'title' => string 'နေဝင်း၊ ကောလိပ်ဂျင်' (length=55)
public 'revisions' =>
array (size=1)
0 =>
object(stdClass)[6]
...
问题是我无法获得任何 further.For 示例,如何获得上述 json 中 pageid 的字符串?任何想法或指导将不胜感激。
尝试将 json 解码为数组,以便您可以更轻松地访问数据,例如:
$jsonData = json_decode($json, TRUE); //set the flag
$jsonData = $jsonData['query']['pages']; //rewrite with usefull info
$pageIds = array_keys($jsonData); //get pages, array(7037,...)
foreach($pageIds as $pageId) { //iterate to access $jsonData[7037]['title']
echo $jsonData[$pageId]['title'];
}
我一直在尝试访问维基百科 json 数据 php.Here 是 json。
{
"query": {
"normalized": [
{
"from": "နေဝင်း၊_ကောလိပ်ဂျင်",
"to": "နေဝင်း၊ ကောလိပ်ဂျင်"
}
],
"pages": {
"7037": {
"pageid": 7037,
"ns": 0,
"title": "နေဝင်း၊ ကောလိပ်ဂျင်",
"revisions": [
{
"user": "Mayor mt",
"timestamp": "2015-04-04T06:30:59Z",
"comment": "\/* ကောလိပ်ဂျင် *\/",
"contentformat": "text\/x-wiki",
"contentmodel": "wikitext",
"*": "{| border=\"0\" cellpadding=\"2\" style=\"margin:7px;width: 20em; font-size: 90%; text-align: left; float:right; border:1px solid #5BBFF4; background-color:#FDE4FE;\"\n|-\n| colspan=\"2\" style=\"text-align: center; font-size: 130%; font-weight: bold;\" | ကောလိပ်ဂျင်နေဝင်း\n|-\n| colspan=\"2\" style=\"text-align: center;\" |[[File:CLJ.jpg|180px]]\n\n|-valign=\"top\"\n| '''မွေးသက္ကရာဇ်'''\n| ၁-၁၀-၁၉၂၈\n\n|-valign=\"top\"\n| '''မိဘအမည်'''\n| ဦးသက်ဖေ+ဒေါ်တင် \n\n|-valign=\"top\"\n| '''အမည်ရင်း'''\n| နေဝင်း\n\n|-valign=\"top\"\n| '''နိုင်ငံ'''\n|[[File:Flag of Myanmar.svg|25px ]] မြန်မာ\n\n|-valign=\"top\"\n| '''ပညာအရည်အချင်း'''\n| \n\n|-valign=\"top\"\n|'''အလုပ်အကိုင်'''\n| ရုပ်ရှင်သရုပ်ဆောင်\n\n|-valign=\"top\"\n|'''ထင်ရှားကျော်ကြားမှု'''\n| ထူးခြားစွာ ရုပ်ရှင်သရုပ်ဆောင်နိုင်သူ၊ စကားပြောကောင်းသူ၊ ဘောလုံးသမား \n\n|-valign=\"top\"\n| '''ကိုးကွယ်သည့်ဘာသာ'''\n| ခရစ်ယာန်\n\n|}\n== ကောလိပ်ဂျင်နေဝင်း(၁၉၂၈-၁၉၈၃) ==\n'''ကောလိပ်ဂျင်နေဝင်း'''ကို ၁-၁၀-၂၈ ရက်နေ့တွင် ဟင်္သာတမြို့၌
我知道如何访问 xml tags.But Json 中的数据me.I 用 php 解码 json 并尝试访问喜欢
var_dump ($dj->query->pages);
输出为
object(stdClass)[4]
public '7037' =>
object(stdClass)[5]
public 'pageid' => int 7037
public 'ns' => int 0
public 'title' => string 'နေဝင်း၊ ကောလိပ်ဂျင်' (length=55)
public 'revisions' =>
array (size=1)
0 =>
object(stdClass)[6]
...
问题是我无法获得任何 further.For 示例,如何获得上述 json 中 pageid 的字符串?任何想法或指导将不胜感激。
尝试将 json 解码为数组,以便您可以更轻松地访问数据,例如:
$jsonData = json_decode($json, TRUE); //set the flag
$jsonData = $jsonData['query']['pages']; //rewrite with usefull info
$pageIds = array_keys($jsonData); //get pages, array(7037,...)
foreach($pageIds as $pageId) { //iterate to access $jsonData[7037]['title']
echo $jsonData[$pageId]['title'];
}