Documentación offline PHP master

GearmanWorker::addFunction

master Ver versión oficial en línea Licencia CC-BY-3.0Descargado el 2026-08-02

En esta página

GearmanWorker::addFunction

Registra y añade una función de retrollamada

Descripción#

public GearmanWorker::addFunction(string $function_name, callable $function, [mixed $context], [int $timeout]): bool
```php

Registra una función de retrollamada con el servidor de trabajos y especifica una retrollamada correspondiente a esta función. Opcionalmente, fija datos de contexto de la aplicación a utilizar cuando la función de retrollamada es llamada, así como un tiempo límite de ejecución.

## Parámetros

`function_name`  
El nombre de la función a registrar con el servidor de trabajos

`function`  
Una función de retrollamada a llamar cuando un trabajo es enviado

`context`  
Una referencia a datos de contexto de la aplicación que pueden ser modificados por la función del agente.

`timeout`  
Un intervalo de tiempo, en segundos.

## Valores devueltos

Esta función retorna `true` en caso de éxito o `false` si ocurre un error.

## Ejemplos

Agente simple que utiliza datos de contexto de la aplicación
addServer(); ## Define una variable que contiene los datos de la aplicación $count= 0; ## Añade la función "reverse" $worker->addFunction("reverse", "reverse_cb", $count); ## Inicia el agente while ($worker->work()); function reverse_cb($job, &$count) { $count++; return "$count: " . strrev($job->workload()); } ?>

```php

La ejecución de un cliente que envía 2 trabajos para la función reverse mostrará algo como:

1: olleh
2: dlrow

Véase también#

GearmanClient::do