GearmanClient::doNormal
GearmanClient::echo
GearmanClient
PHP Manual

# GearmanClient::doStatus

(PECL gearman >= 0.5.0)

GearmanClient::doStatus — Récupère le statut de la tâche en cours

### Description

public array GearmanClient::doStatus ( void )

Retourne le statut de la tâche en cours. Il pourra être utilisé lors de multiples appels à la méthode GearmanClient::doNormal().

### Liste de paramètres

Cette fonction ne contient aucun paramètre.

### Valeurs de retour

Un tableau représentant le pourcentage de réalisation fourni sous la forme d'une fraction, dont le premier élément est le numérateur, et le second, le dénominateur.

### Exemples

Exemple #1 Récupère le statut d'un travail dont l'exécution prend du temps

L'agent dans cet exemple a un délai artificiel ajouté lors de l'exécution de la fonction. Après chaque délai, il appèle la méthode GearmanJob::status() dont le client récupère l'information.

`<?php
echo "Début\n";
# Crée un client.
$gmclient= new GearmanClient();
# Ajoute un serveur par défaut (localhost).
$gmclient->addServer();
echo "Envoi d'un travail\n";
# Envoi du travail
do
{
$result = $gmclient->doNormal("reverse", "Hello!");
# Vérifie les différents paquets et erreurs retournés.
switch($gmclient->returnCode())
{
case GEARMAN_WORK_DATA:
break;
case GEARMAN_WORK_STATUS:
# Récupère le statut du travail en cours
list($numerator, $denominator)= $gmclient->doStatus();
echo "Statut : $numerator/$denominator complete\n";
break;
case GEARMAN_WORK_FAIL:
echo "Échec \n";
exit;
case GEARMAN_SUCCESS:
break;
default:
echo "RET : " . $gmclient->returnCode() . "\n";
exit;
}
}
while($gmclient->returnCode() != GEARMAN_SUCCESS);
echo "Succès : $result\n";
?>`

L'exemple ci-dessus va afficher quelque chose de similaire à :

    Début
    Envoi d'un travail
    Statut : 1/6 complete
    Statut : 2/6 complete
    Statut : 3/6 complete
    Statut : 4/6 complete
    Statut : 5/6 complete
    Statut : 6/6 complete
    Succès : !olleH

### Voir aussi

- GearmanClient::doNormal() - Exécute une tâche et retourne le résultat
- GearmanJob::status() - Envoie un statut (obsolète)

GearmanClient::doNormal
GearmanClient::echo
GearmanClient
PHP Manual