This for print and use API:
$cho = curl_init('https://id.twitch.tv/oauth2/token');
curl_setopt($cho, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($cho, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($cho, CURLOPT_POST, 1);
$fields = array(
'client_id' => 'c533u8ntdp29h42xxzwfe0pf5v66dm',
'client_secret' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX',
'grant_type' => 'client_credentials'
);
curl_setopt($cho, CURLOPT_POSTFIELDS, $fields);
$output = curl_exec($cho);
$info = curl_getinfo($cho);
// print_r($info);
$oauth = json_decode($output, true);
$token = $oauth['access_token'];
// print_r($token);
// inizio a chiamare le API
$all_channels = [];
foreach($channels as $chans){
if (count($chans) > 0) {
$callAPI = implode('&user_login=', $chans);
$url="https://api.twitch.tv/helix/streams?user_login=" . $callAPI;
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Client-ID: c533u8ntdp29h42xxzwfe0pf5v66dm',
'Authorization: Bearer '.$token
));
$result = curl_exec($ch);
$i = curl_getinfo($ch);
curl_close($ch);
// preparo le stamp per le API
$str = json_decode($result, true);
if ($i['http_code'] == 200) {
// play print API
foreach ($str['data'] as $live_chan){
$all_channels[] = $live_chan;
}
// do stuff with $str has chnanels
} else {
// non 200 do somethign with the error
// do stuff with $str has error message
}
// print_r($url);
// fine chiamata API
}
}
This for count total views (but not works):
foreach($all_channels as $mydata){
$views = $mydata['viewer_count'];
$viewss = (array)$views;
$viewsss = implode('+', (array)$views);
$totv = array_sum($viewsss);
}
echo $totv;