2017-10-11 97 views
0

我想了解用戶是否屬於Steam組。爲此,我使用Steam的Web API並使用URL:使用PHP在JSON URL響應中查找特定條目

https://api.steampowered.com/ISteamUser/GetUserGroupList/v1/?key=APIKEYHERE&steamid=STEAMID64HERE 

獲取用戶所屬的所有組的JSON響應。 現在我想知道他們是否是我使用PHP的ID:1111111的特定組的一部分。

如何做到這一點?目前我的代碼被解碼如下:

$groupid = "1111111"; 
$url = "https://api.steampowered.com/ISteamUser/GetUserGroupList/v1/?key=APIKEYHERE&steamid=STEAMID64HERE"; 
$result = file_get_contents($url); 
// Will dump a beauty json :) 
$pretty = json_decode($result, true); 

這使得$ pretty變量包含整個JSON響應。 我將如何使用PHP在看起來像這樣的響應中查找組ID?

{ 
    "response": { 
     "success": true, 
     "groups": [ 
      { 
       "gid": "4458711" 
      }, 
      { 
       "gid": "9538146" 
      }, 
      { 
       "gid": "11683421" 
      }, 
      { 
       "gid": "24781197" 
      }, 
      { 
       "gid": "25160263" 
      }, 
      { 
       "gid": "26301716" 
      }, 
      { 
       "gid": "29202157" 
      }, 
      { 
       "gid": "1111111" 
      } 
     ] 

    } 
} 

無法弄清楚。 有什麼幫助嗎? :)

+0

請檢查我的答案,讓我任何其他幫助 – Abhijit

+0

沒有工作,請參閱評論 –

+0

檢查.. PLZ等待 – Abhijit

回答

1

使用下面的代碼來檢查用戶是否在響應中存在或不

$groupid = "1111111"; 
$is_exists = false; 
$url = "https://api.steampowered.com/ISteamUser/GetUserGroupList/v1/?key=APIKEYHERE&steamid=STEAMID64HERE"; 
$result = file_get_contents($url); 

// Will dump a beauty json :) 
$pretty = json_decode($result, true); 
foreach ($pretty['response']['groups'] as $key => $value) { 
    if($value['gid'] == $groupid) { 
     $is_exists = true; 
     break; 
    } 
} 

// check is_exists 

檢查變量$is_exists爲真或假上述

+0

謝謝你!成功了!欣賞它 –

1
 $groupid = "1111111"; 
    $url = "https://api.steampowered.com/ISteamUser/GetUserGroupList /v1/?key=APIKEYHERE&steamid=STEAMID64HERE"; 
    $result = file_get_contents($url); 
    // Will dump a beauty json :) 
    $pretty = json_decode($result); 
    $s = $pretty->response->groups; 
    foreach($s as $value) 
    { 
     if((int) $groupid == $value->gid) 
     { 
      echo "Found"; 
     }else 
     { 
      echo "Not found"; 
     } 

    } 
+0

它保持返回未找到,儘管groupid實際上是在響應中。 –

+0

@peter:我已經編輯了我的答案,請再檢查一次。並讓我知道任何其他幫助 – Abhijit

+0

注意:嘗試在第8行的/var/www/html/test.php中獲取非對象的屬性 注意:試圖獲取/ var/www /第8行的html/test.php 警告:在第9行的/var/www/html/test.php中爲foreach()提供了無效參數 –