【发布时间】:2016-06-10 05:44:41
【问题描述】:
我的 Gearman 工作人员需要连接到我的数据库。如何传递对我的全局 $db 变量的引用?在下面的代码中,$db 在executeJob 函数中是未定义的。
$db = new mysqli($db_host, $db_user, $db_pass, $db_name, $db_port);
// set up Gearman worker
$worker = new GearmanWorker();
$worker->addServer();
$worker->addFunction("execute", "executeJob");
while($worker->work());
function executeJob($job) {
global $db;
print_r($db); \\ UNDEFINED
}
php 手册建议在使用addFunction 设置工作函数时可以传递上下文数据,但我不清楚这是否是我需要的,甚至不清楚如何去做。谢谢!!
【问题讨论】:
-
这段代码是否恰好在函数内部...?
-
不,上面的 sn-p 不在函数内。
标签: php global-variables gearman