2016-03-04 49 views
1

我在php有一个gearman worker。工作者代码在类中定义了一个类和一个函数。如何使用类对象调用gearman工作函数

我不能使用使用类的对象的齿轮工人注册和调用该函数。以下是代码。请帮忙。

<?php 
class Validation { 

    public function myfunction() { 
     $xyz = 0; 
     ) 
} 

$myobj = new Validation(); 
$worker = new GearmanWorker(); 
$worker->addServer('localhost'); 
$worker->addFunction("myobj->myfunction","myobj->myfunction"); 

while($worker->work()) 
{ 

if ($worker->returnCode() != GEARMAN_SUCCESS) 
{ 
syslog(LOG_ERR, "return_code: " . $worker->returnCode()); 
break; 
} 
} 

?> 

回答

1

从这个GearmanWorker's document,你需要输入可调用到第二个PARAM:

$myObj = new Validation(); 
$worker->addFunction("myfunction",array($myObj, "myfunction")); 

我没有测试这个代码,因为我在这里没有安装Gearman的事,但希望它帮助。

相关问题