Battlefiled 3 stats:
array(), 'opt' => array()); // Our list of players $playerData['players'][] = 'OHE_'; $playerData['players'][] = 'Fookerama'; $playerData['players'][] = 'Tokkjaen'; $playerData['players'][] = 'MeltzerX'; $playerData['players'][] = 'Claddn'; $playerData['players'][] = 'andypandy76'; $playerData['players'][] = 'Jezperado'; $playerData['players'][] = 'elCapitanNOR'; $playerData['players'][] = 'gaute74'; $playerData['players'][] = 'piffer76'; /* In this example we want as little information to come back from the API as possible. ** Therefore we are calling the "clear" function, which means we need to manually enable ** each stat group we need. This will help keep the size of the response down, and therefore execution time. */ $playerData['opt']['clear'] = true; // Data we want to be returned $playerdata['opt']['all'] = true; $playerData['opt']['global'] = true; $playerData['opt']['nextranks'] = true; $playerData['opt']['rank'] = true; $playerData['opt']['kits'] = true; $playerData['opt']['scores'] = true; $playerData['opt']['imgInfo'] = true; $playerData['opt']['awards'] = true; $playerdata['opt']['awardsInfo'] = true; $playerdata['opt']['awardsAwarded'] = true; $playerData['opt']['ribbons'] = true; $playerData['opt']['raw'] = true; $playerData['opt']['nozero'] = true; $playerData['opt']['coop'] = true; $playerdata['opt']['coopInfo'] = true; $playerdata['opt']['coopimg'] = true; // Convert lists to JSON ready for the curl post request $postData = array(); $postData['players'] = json_encode($playerData['players']); $postData['opt'] = json_encode($playerData['opt']); // This example hardcodes "pc" players $c = curl_init('http://api.bf3stats.com/pc/playerlist/'); curl_setopt($c, CURLOPT_HEADER, false); curl_setopt($c, CURLOPT_POST, true); curl_setopt($c, CURLOPT_USERAGENT, 'BF3StatsAPI/0.1'); curl_setopt($c, CURLOPT_HTTPHEADER, array('Expect:')); curl_setopt($c, CURLOPT_RETURNTRANSFER, true); curl_setopt($c, CURLOPT_POSTFIELDS, $postData); $response = curl_exec($c); $statusCode = curl_getinfo($c, CURLINFO_HTTP_CODE); curl_close($c); // 200 means a successful call if($statusCode == 200) { // Decode JSON Data into an array we can easily parse $data = json_decode($response, true); // Counter for our players array $i = 0; // Loop through each of our players we set above and see what data we have for them foreach($playerData['players'] AS $player) { // Does this player exist in the returned data? if(isset($data['list'][$player])) { // This checks to see if the player actually has any stats yet on the site if($data['list'][$player]['status'] == "data") { $stats[$i]['name'] = $data['list'][$player]['name']; $stats[$i]['country_name'] = $data['list'][$player]['country']; $stats[$i]['rank'] = $data['list'][$player]['stats']['rank']['nr']; $stats[$i]['ranktest'] = $data['list'][$player]['stat']['kdr']; $stats[$i]['rank2'] = $data['list'][$player]['stats']['rank']['img_info']; $stats[$i]['name1'] = $data['list'][$player]['stats']['rank']['name']; $stats[$i]['ribbonsimgr08'] = $data['list'][$player]['stats']['ribbons']['r08']['img_small']; $stats[$i]['ribbonscountr08'] = $data['list'][$player]['stats']['ribbons']['r08']['count']; $stats[$i]['ribbonsnamer08'] = $data['list'][$player]['stats']['ribbons']['r08']['name']; $stats[$i]['ribbonsimgr11'] = $data['list'][$player]['stats']['ribbons']['r11']['img_small']; $stats[$i]['ribbonscountr11'] = $data['list'][$player]['stats']['ribbons']['r11']['count']; $stats[$i]['ribbonsnamer11'] = $data['list'][$player]['stats']['ribbons']['r11']['name']; $stats[$i]['ribbonsimgr16'] = $data['list'][$player]['stats']['ribbons']['r16']['img_small']; $stats[$i]['ribbonscountr16'] = $data['list'][$player]['stats']['ribbons']['r16']['count']; $stats[$i]['ribbonsnamer16'] = $data['list'][$player]['stats']['ribbons']['r16']['name']; $stats[$i]['ribbonsimgr17'] = $data['list'][$player]['stats']['ribbons']['r17']['img_small']; $stats[$i]['ribbonscountr17'] = $data['list'][$player]['stats']['ribbons']['r17']['count']; $stats[$i]['ribbonsnamer17'] = $data['list'][$player]['stats']['ribbons']['r17']['name']; $stats[$i]['ribbonsimgr18'] = $data['list'][$player]['stats']['ribbons']['r18']['img_small']; $stats[$i]['ribbonscountr18'] = $data['list'][$player]['stats']['ribbons']['r18']['count']; $stats[$i]['ribbonsnamer18'] = $data['list'][$player]['stats']['ribbons']['r18']['name']; $stats[$i]['ribbonsimgr30'] = $data['list'][$player]['stats']['ribbons']['r30']['img_small']; $stats[$i]['ribbonscountr30'] = $data['list'][$player]['stats']['ribbons']['r30']['count']; $stats[$i]['ribbonsnamer30'] = $data['list'][$player]['stats']['ribbons']['r30']['name']; $stats[$i]['ribbonsimgr31'] = $data['list'][$player]['stats']['ribbons']['r31']['img_small']; $stats[$i]['ribbonscountr31'] = $data['list'][$player]['stats']['ribbons']['r31']['count']; $stats[$i]['ribbonsnamer31'] = $data['list'][$player]['stats']['ribbons']['r31']['name']; $stats[$i]['ribbonsimgr40'] = $data['list'][$player]['stats']['ribbons']['r40']['img_small']; $stats[$i]['ribbonscountr40'] = $data['list'][$player]['stats']['ribbons']['r40']['count']; $stats[$i]['ribbonsnamer40'] = $data['list'][$player]['stats']['ribbons']['r40']['name']; $stats[$i]['ribbonsimgr41'] = $data['list'][$player]['stats']['ribbons']['r41']['img_small']; $stats[$i]['ribbonscountr41'] = $data['list'][$player]['stats']['ribbons']['r41']['count']; $stats[$i]['ribbonsnamer41'] = $data['list'][$player]['stats']['ribbons']['r41']['name']; $stats[$i]['ribbonsimgr19'] = $data['list'][$player]['stats']['ribbons']['r19']['img_small']; $stats[$i]['ribbonscountr19'] = $data['list'][$player]['stats']['ribbons']['r19']['count']; $stats[$i]['ribbonsnamer19'] = $data['list'][$player]['stats']['ribbons']['r19']['name']; $stats[$i]['medalsimgm26'] = $data['list'][$player]['stats']['medals']['m26']['img_small']; $stats[$i]['medalscountm26'] = $data['list'][$player]['stats']['medals']['m26']['count']; $stats[$i]['medalsnamem26'] = $data['list'][$player]['stats']['medals']['m26']['name']; $stats[$i]['medalsimgm24'] = $data['list'][$player]['stats']['medals']['m24']['img_small']; $stats[$i]['medalscountm24'] = $data['list'][$player]['stats']['medals']['m24']['count']; $stats[$i]['medalsnamem24'] = $data['list'][$player]['stats']['medals']['m24']['name']; $stats[$i]['medalsimgm25'] = $data['list'][$player]['stats']['medals']['m25']['img_small']; $stats[$i]['medalscountm25'] = $data['list'][$player]['stats']['medals']['m25']['count']; $stats[$i]['medalsnamem25'] = $data['list'][$player]['stats']['medals']['m25']['name']; $stats[$i]['medalsimgm39'] = $data['list'][$player]['stats']['medals']['m39']['img_small']; $stats[$i]['medalscountm39'] = $data['list'][$player]['stats']['medals']['m39']['count']; $stats[$i]['medalsnamem39'] = $data['list'][$player]['stats']['medals']['m39']['name']; $stats[$i]['spm'] = $data['list'][$player]['stats']['global']['time']; $stats[$i]['last-update'] = date('d.m.y - H:i',$data['list'][$player]['stats']['date_check']); $stats[$i]['rankimg1'] = $data['list'][$player]['stats']['rank']['img_medium']; $stats[$i]['rankimg'] = $data['list'][$player]['stats']['rank']['img_tiny']; $stats[$i]['time'] = $data['list'][$player]['stats']['global']['time']; $stats[$i]['kills'] = $data['list'][$player]['stats']['global']['kills']; $stats[$i]['deaths'] = $data['list'][$player]['stats']['global']['deaths']; $stats[$i]['skill'] = $data['list'][$player]['stats']['global']['elo']; $stats[$i]['score'] = $data['list'][$player]['stats']['scores']['score']; $stats[$i]['team'] = $data['list'][$player]['stats']['scores']['team']; $stats[$i]['dogtags'] = $data['list'][$player]['stats']['global']['dogtags']; $stats[$i]['longesths'] = $data['list'][$player]['stats']['global']['longesths']; $stats[$i]['wins'] = $data['list'][$player]['stats']['global']['wins']; $stats[$i]['losses'] = $data['list'][$player]['stats']['global']['losses']; $stats[$i]['kits'] = array(); $stats[$i]['progress'] = round(($data['list'][$player]['stats']['scores']['score']-$data['list'][$player]['stats']['rank']['score'])/($data['list'][$player]['stats']['nextranks']['0']['score']-$data['list'][$player]['stats']['rank']['score'])*100,0); $stats[$i]['kits'][] = array('name' => 'assault', 'time' => $data['list'][$player]['stats']['kits']['assault']['time']); $stats[$i]['kits'][] = array('name' => 'engineer', 'time' => $data['list'][$player]['stats']['kits']['engineer']['time']); $stats[$i]['kits'][] = array('name' => 'recon', 'time' => $data['list'][$player]['stats']['kits']['recon']['time']); $stats[$i]['kits'][] = array('name' => 'support', 'time' => $data['list'][$player]['stats']['kits']['support']['time']); $stats[$i]['killassists'] = $data['list'][$player]['stats']['global']['killassists']; $stats[$i]['revives'] = $data['list'][$player]['stats']['global']['revives']; $stats[$i]['resupplies'] = $data['list'][$player]['stats']['global']['resupplies']; $stats[$i]['heals'] = $data['list'][$player]['stats']['global']['heals']; $stats[$i]['headshots'] = $data['list'][$player]['stats']['global']['headshots']; $stats[$i]['award'] = $data['list'][$player]['stats']['scores']['award']; $stats[$i]['bonus'] = $data['list'][$player]['stats']['scores']['bonus']; $stats[$i]['unlock'] = $data['list'][$player]['stats']['scores']['unlock']; $stats[$i]['support'] = $data['list'][$player]['stats']['scores']['support']; $stats[$i]['assault'] = $data['list'][$player]['stats']['scores']['assault']; $stats[$i]['recon'] = $data['list'][$player]['stats']['scores']['recon']; $stats[$i]['engineer'] = $data['list'][$player]['stats']['scores']['engineer']; $stats[$i]['scorecoop'] = $data['list'][$player]['stats']['coop']['score']; // Work out which is the most used kit usort($stats[$i]['kits'], 'sortKits'); $stats[$i]['class'] = $stats[$i]['kits'][0]['name']; $i++; } } } // Order players based on score usort($stats, 'sortPlayers'); ?>
| Pos | Player | Rank | Progress | Score | Teams. | W/L | WLR | K/D | KDR | ELO | Time | Dogt. | Longest Headshot |
=$pos?> |
=$stats[$out]['name']?> |
|---|
';
print_r($data);
echo '';
}
}
else
{
echo 'Error contacting API status code: '.$statusCode;
}
// Lets dump our functions down here, these would be better in a seperate include though
function sortKits($x, $y)
{
if($x['time'] == $y['time'])
{
return 0;
}
elseif($x['time'] < $y['time'])
{
return 1;
}
else
{
return -1;
}
}
function sortPlayers($x, $y)
{
if($x['score'] == $y['score'])
{
return 0;
}
elseif($x['score'] < $y['score'])
{
return 1;
}
else
{
return -1;
}
}
// Convert seconds to hours
function sec2hms($sec, $padHours = false)
{
$hms = "";
$hours = intval(intval($sec) / 3600);
$hms .= ($padHours)? str_pad($hours, 2, "0", STR_PAD_LEFT). ':' : $hours;
return $hms;
}
?>
Stats powered by: bf3stats.com.

