Classe PHP pour Pinger un service web
Par jaycreation le jeudi, juillet 29 2010, 14:56 - php - Lien permanent
Après un script simple pour pinger les différents services web qui nous aident à rendre nos site plus visible, voici une class PHP5 plus évoluée qui va vous permettre de pinguer les services en fonction de leur cible.
Ainsi vous pourrez ne pas pinguer les services de blogging si vous avez un site web classique, ou ne pinguer que les aggrégateurs de flux comme feedburner pour vos RSS.
Documentation de la classe ping.class.php :
$ping = new pinger();
$ping->all();
Vous allez ainsi pinguer tous les services présent dans le fichier ping.class.php.
Ping par thème :
Les adresses à pinguer sont classées par thèmes pour les cas plus spécifiques :- Sites
- Blogs
- Feeds
- autres
Pour connaitre la liste des thèmes vous pouvez simplement faire :
$themes = $ping->getThemes();
foreach($themes as $theme){
echo($theme);
}Pour ne pinguer qu’un thème vous avez deux solutions :
Pour les quatre thèmes de base :
$ping->nomDutheme();donc :
$ping->sites();
$ping->blogs();
$ping->feeds();
$ping->autres();
Pour les RSS d’un site web on fera donc :
$ping = new pinger();
$ping->sites();
$ping->feeds();
Pour un theme que vous avez ajouté vous-même :
$ping->theme("nomDeVotreTheme");
Ajouter un thème
Justement pour ajouter un nouveau thème contenant une ou plusieurs addresses :
$theme = "annuaires" ;
$adresses = array("ping.dmoz.com", "ping.dmoz.com/france") ;
$ping->addTheme($theme, $adresses)
Vous pouvez également ajouter une adresse à un thème qui existe :
$theme = "feeds" ;
$adresses = array("ping.dmoz.com", "ping.dmoz.com/france") ;
$ping->addAdresses($theme, $adresses)
Enfin, pour ne pinguer qu’une adresse précise :
$ping->oneSite("http://ping.feedburner.com");
Voici un exemple complet :
$theme = "annuaires";
$adresses = array("ping.dmoz.com", "ping.dmoz.com/france") ;
$ping = new pinger();
$ping->addTheme($theme, $adresses)
$ping->theme(‘annuaires’);
$ping->sites();
$ping->feeds();
Derniere astuce, pour afficher les erreurs passez la variable $print_errors à true :
$ping = new Pinger();
$ping->print_errors = true;
$ping->all();
> Télécharger la classe ping.class.php <
N’hésitez pas à m’envoyer vos améliorations ou des adresses à ajouter dans les pings !
Commentaires
La class est simple mais bien faite et la syntaxe d’utilisation est très clair,