繁体   English   中英

在json文件中查找某些内容,如果不起作用则尝试其他操作

[英]Looking for something in json file then trying something else if it doesnt work

我从一个站点获取json文件,我希望它能找到哪个人获取该文件并使用该文件。 我也使用$ _GET方法。 有两种获取同一文件的方法,但是它们都需要来自Steam的ID或自定义网址。

我的网址示例:www.mysite.com?id=123123123

两种获取json文件的方式:

我如何解码它:

$id = $_GET['id'];
$url = "http://steamcommunity.com/id/".$id."/inventory/json/730/2";
$content = file_get_contents($url);
$playerinfo = json_decode($content, true);
$InventoryStatus = $playerinfo['success'];

一些参考

$id = $_GET['id'];
$handlers =array(
    'getByJson','getByDB','getBySomething'
);
$result = array('handler'=>'','data'=>'');

然后致电$ handlers

foreach($handlers as $m){
    $methodResult = call_user_func($m,$id);
    if($methodResult !==false){
        $result = array('handler'=>$m, 'data' => $methodResult) ;
        break;
    }
}

处理这样的事情

function getByJson($id){
    $url = "http://steamcommunity.com/id/".$id."/inventory/json/730/2";
    $string = file_get_contents($url);
    $isJson =is_string($string) && is_object(json_decode($string)) && (json_last_error() == JSON_ERROR_NONE) ? true : false;
    if($isJson){
       $playerinfo = json_decode($content, true);
       return $playerinfo['success'];
    }

    return false;
}

function getByDB($id){
     // get $result

        if(condition){
            return $result
        }
        return false;

}

function getBySomething($id){
         // get $result

        if(condition){
            return $result
        }
        return false;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM