I've created a patch to add support for calling get_status on the Gearman-server. To support this I've added a new property to Task which contains the server that is responsible for running the task, in addition to adding two new methods (and an array to keep track) to Client to be able to match server addresses to sockets easily. The new method is named getStatus(server, handle) and returns the ['data'] element (containing handle, numerator, denominator, finished, etc.).
The patchset is available here:
http://e-mats.org/resources/GearmanGetStatusSupport.tar.gz
It's against the current origin/master.