Executer un script sans attendre la réponse de l'url

Soyez le premier à donner votre avis sur cette source.

Snippet vu 6 117 fois - Téléchargée 16 fois

Contenu du snippet

Des fois on a besoin d’exécuter un script en appelant une url, sans attendre la réponse dans le cas ou le script risque de prendre beaucoup de temps.

l'astuce c'est d'utiliser "curl_multi_exec" qui permet de lancer plusieurs urls en même temps (asynchrone)
et c'est en utilisant une boucle qu'on récupère le contenu de chaque url. donc il faut juste breaker la boucle aussitôt..

Source / Exemple :


<?php
function callUrl($url){
	$cmi = curl_multi_init();
	$curl = curl_init();
	curl_setopt($curl, CURLOPT_URL, $url);
	curl_multi_add_handle($cmi, $curl);
	
	do {
		curl_multi_exec($cmi, $running);
		//on attends quelques micro secondes puis on break la boucle.
		//comme ça on arrive a appeler l'url sans attendre la réponse  
		usleep(1000);
		break;
	} while ($running > 0);
	
	curl_multi_remove_handle($cmi, $curl);
	curl_multi_close($cmi);
}

//l'url du script en a executer
callUrl("http://www.bing.com");

A voir également

Ajouter un commentaire

Commentaires

Bonjour, je fesais mes recherches quand je suis tombe sur votre poste.
je suis confronte a un probleme.
Je m'explique, je veux envoyer des sms a plusieur numeros. L'envoie d'sms reviens a execute un url. j'ai pu recuperer les numeros dans un tableau et j'ai fait la boucle mais je n'ai pas le resultat atendu
voici mon code,


foreach ($listeabonne as $thisUser) {
echo $thisUser['telephone'];

$thisNumber = $thisUser['telephone'];


$request = sprintf('http://xxx.x.xxx.xxx/bulksms/bulksend.go?username="'.$user.'"&password="'.$pass.'"&originator=TDECEDEAO&phone="'.$thisNumber.'"&msgtext="'.$message);



}


qu'est ce qui manque? ou c'est une erreur? bref j'ai besoin d'aide et c'est urgent.
Merci d'avance pour votre aide
NHenry
Messages postés
14574
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
30 octobre 2019
136 > nytho -
"je n'ai pas le resultat atendu"
Quel est le résultat attendu et quel est le résultat obtenu ?
> NHenry
Messages postés
14574
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
30 octobre 2019
-
le resultat attendu est l'envoie des sms mais l'envoie ne marche pas or j'ai plus de 80 contacts dans ma base donc rien ne se passe
NHenry
Messages postés
14574
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
30 octobre 2019
136 > nytho -
As-tu essayé avec des requêtes bloquantes ?
As-tu regardé les retours ?
Es-tu sûr de ta requête (URL appelée) ?
> NHenry
Messages postés
14574
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
30 octobre 2019
-
Salut.
Qu'appelles tu requete bloquante en realite je suis une debutante en php mais je me defend pas mal.
Les retours sont bon quand je fais
 echo $thisUser['telephone'];
les numeros s'affichent bien et pour l'url c'est le bon car quand je le met dans mon navigateur avec mon numero je recois l'sms

Merci pour ton aide et j'espere avoir repondu a tes question

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.