PHP - Renvoyer un résultat pour plusieurs URL [Fermé]

Signaler
Messages postés
1809
Date d'inscription
mardi 6 mars 2007
Statut
Membre
Dernière intervention
13 mai 2019
-
jordane45
Messages postés
27721
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 février 2020
-
Bonjours je vous explique mon problème.

J'ai un script php qui me permet de connaitre le nombre de "share facebook" d'un lien donné que voici :

function get_likes($url) {

    $json_string = file_get_contents('http://graph.facebook.com/?ids=' . $url);
    $json = json_decode($json_string, true);

    return intval( $json[$url]['shares'] );
}


Ensuite je l'appelle avec ceci :

<?php echo get_likes('url...'); ?>


Ce que je voudrais faire, c'est pouvoir retourner ce résultat pour n'importe quel nombre du d'URL.
Par exemple, si j'ai dans un fichier 100 url les unes sous les autres, alors je voudrais que ce script php me renvoies le nombre de "share" pour chacunes des url de mon ficher.
Quelqu'un aurait-il une idée sur comment procéder ?
Merci.

1 réponse

Messages postés
258
Date d'inscription
vendredi 10 juillet 2009
Statut
Membre
Dernière intervention
23 janvier 2019
77
Salut,

Je mettrai les urls dans un array, puis dans une boucle (type foreach), je récupère le nombre de like pour les additionner

Exemple :
$list_url = array('lien1','lien2',...);

$total_likes = 0;

foreach($list_url as $url)
{
  $total_likes += get_likes($url);
}
Theophile76
Messages postés
1809
Date d'inscription
mardi 6 mars 2007
Statut
Membre
Dernière intervention
13 mai 2019
323
Merci mais cela va additionner les like ? Car je voudrais les afficher pour chaque url mais sans les additionner.
jordane45
Messages postés
27721
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 février 2020
2 152 > Theophile76
Messages postés
1809
Date d'inscription
mardi 6 mars 2007
Statut
Membre
Dernière intervention
13 mai 2019

Dans ce cas tu retournes un ARRAY contenant chaque "share"

En repartant du code de totoyo
$list_url = array('lien1','lien2',...);
$arr_like = array();
foreach($list_url as $url){
  $arr_like[]= array('URL'=>$url,'like'=>get_likes($url));
}