On PHP 5.5 you can use the following code for passing context by reference and avoid "Call-time pass-by-reference has been removed":
<?php
$client = new GearmanClient();
$client->addServer();
$client->setCompleteCallback("reverse_complete");
$results = new StdClass();
$results->value = array();
$client->addTask("reverse", "Hello World!", $results, "t1");
$client->addTask("reverse", "!dlroW olleH", $results, "t2");
$client->runTasks();
foreach ($results->value as $id => $result) {
echo $id . ": " . $result['handle'] . ", " . $result['data'] . "\n";
}
function reverse_complete(GearmanTask $task, StdClass $results)
{
$results->value[$task->unique()] = array(
"handle" => $task->jobHandle(),
"data" => $task->data()
);
}
?>