Gearman workers无法访问PHP框架
嗨,我已经安装并配置了Gearman。到目前为止,尝试这些例子是很好的,当我开始在我的项目中实际使用它时,我的问题就开始了 我在我的项目中使用的是Yii-php框架,我在主项目目录中包含了我所有的worker文件Gearman workers无法访问PHP框架,php,postgresql,yii,gearman,Php,Postgresql,Yii,Gearman,嗨,我已经安装并配置了Gearman。到目前为止,尝试这些例子是很好的,当我开始在我的项目中实际使用它时,我的问题就开始了 我在我的项目中使用的是Yii-php框架,我在主项目目录中包含了我所有的worker文件 ProjectName/workers/worker.php My workers的功能是在给定参数的数据库中插入值。所以我必须包含sql查询,因为我使用的是Yii,所以我使用: Yii::app()->db->createCommand($sql)->execut
ProjectName/workers/worker.php
My workers的功能是在给定参数的数据库中插入值。所以我必须包含sql查询,因为我使用的是Yii,所以我使用:
Yii::app()->db->createCommand($sql)->execute();
我遇到了一个错误:
PHP Fatal error: Class 'Yii' not found in /home/user/lappstack-5.4.34-0/apache2/htdocs/ProjectName/workers/worker.php on line 52
PHP Fatal error: Uncaught exception 'PDOException' with message 'could not find driver' in /home/user/lappstack-5.4.34-0/apache2/htdocs/ProjectName/workers/worker.php:54
似乎我的CLI PHP找不到Yii,所以我尝试使用PDO进行老式操作:
$db = new PDO('pgsql:db...........'usr','pas');
$stmt = $dbh->prepare($sql);
$stmt->execute();
我得到了一个错误:
PHP Fatal error: Class 'Yii' not found in /home/user/lappstack-5.4.34-0/apache2/htdocs/ProjectName/workers/worker.php on line 52
PHP Fatal error: Uncaught exception 'PDOException' with message 'could not find driver' in /home/user/lappstack-5.4.34-0/apache2/htdocs/ProjectName/workers/worker.php:54
因此,与我的web应用程序不同,worker基本上没有一个服务器环境可以访问Yii函数等等。如何解决这个问题?如何培养员工?为了使用Yii,您的工人需要使用以下命令进行实例化: /home/sites/projectName/php yiic命令名 请阅读有关创建命令的文档,该文档编写得很好:
如果您要使用yii,您必须正确使用它,您使用的是命令行还是web界面?是的,我使用的是命令行,而不是web控制器/操作我该如何确切地做到这一点?我尝试使用这些:/home/sites/projectName/php yiic worker.php:和/home/sites/projectName/yiic worker.php和/home/sites/projectName yiic shell php worker.php,它只是在命令行上显示了帮助详细信息。这是一个很大的帮助:我不知道我必须使用yiic而不是直接使用“php”命令。我开始研究它,并通过使用使用YIC的CConsoleCommand创建一个yii控制台应用程序来解决它。使我的控制台应用程序在yii环境中运行: