我正在使用Brian Moon的Gearman Manager,例如,允许我将工作人员送到后台。 我面临的问题是当我想使用 global 关键字在函数之外定义的变量时:
$var = 200;
function worker_execution($job, &$log) {
global $var;
echo "global is: ".$var."\n";
}
此代码不会输出200,因为变量为NULL!?
您知道为什么如何在工作人员职能中启用全局范围吗?
我认为问题在于,齿轮管理器管理器不包含工作文件......它正在读取它并直接进入“工作器功能”,但仍然应该有一个解决方案来访问外部的变量工人职能范围?!
答案 0 :(得分:0)
显示整个代码。例如,如果在调用$ worker-> work()之后声明变量,则不会执行它,因为work()进入无限循环。我确信工作者代码中的全局变量没有问题。
答案 1 :(得分:0)
请注意,请参阅https://groups.google.com/forum/#!topic/gearman/CNbuTshWfXA,使用$ GLOBALS即可。