手动调用cron任务Symfony 1.4

手动调用cron任务Symfony 1.4,cron,symfony-1.4,Cron,Symfony 1.4,我在myProject/lib/task下放置了一个cron任务。这个cron每天工作一年多 但是,现在我必须在项目中创建一个按钮,以便在客户机需要时执行与cron相同的过程。代码太复杂了,我无法在正常操作中重写所有内容 有没有一种方法可以从普通操作调用cron任务?下面是如何从操作调用任务的方法,您只需添加一个链接即可。我在示例中使用了标准Symfony“清除缓存”任务,但您可以将其更改为您的: public function executeRunTaskTest(sfWebRequest $

我在myProject/lib/task下放置了一个cron任务。这个cron每天工作一年多

但是,现在我必须在项目中创建一个按钮,以便在客户机需要时执行与cron相同的过程。代码太复杂了,我无法在正常操作中重写所有内容


有没有一种方法可以从普通操作调用cron任务?

下面是如何从操作调用任务的方法,您只需添加一个链接即可。我在示例中使用了标准Symfony“清除缓存”任务,但您可以将其更改为您的:

public function executeRunTaskTest(sfWebRequest $request)
{
  // need to be working in the project root
  chdir(sfConfig::get('sf_root_dir'));

  // init the task we want to run
  $task = new sfCacheClearTask($this->dispatcher, new sfFormatter());

  // run the task
  $task->run(
    array(), // array of arguments
    array(
      'app' => 'frontend',
      'env' => 'prod',
      'type' => 'all',
    ) // array of options
  );

  // back to where we came from
  $this->redirect($request->getReferer());
}

您也可以使用PHP
exec()
shell\u exec()
函数,但这个Symfony解决方案可能更简单。:)

以下是如何从操作调用任务,只需添加一个链接即可。我在示例中使用了标准Symfony“清除缓存”任务,但您可以将其更改为您的:

public function executeRunTaskTest(sfWebRequest $request)
{
  // need to be working in the project root
  chdir(sfConfig::get('sf_root_dir'));

  // init the task we want to run
  $task = new sfCacheClearTask($this->dispatcher, new sfFormatter());

  // run the task
  $task->run(
    array(), // array of arguments
    array(
      'app' => 'frontend',
      'env' => 'prod',
      'type' => 'all',
    ) // array of options
  );

  // back to where we came from
  $this->redirect($request->getReferer());
}

您也可以使用PHP
exec()
shell\u exec()
函数,但这个Symfony解决方案可能更简单。:)

你确定是克朗·特拉斯克吗?我认为这是cron在特定时间执行的一项symfony任务。这项任务的目的是什么?这是一项长时间运行的繁重任务,cpu和/或内存使用率高,还是轻量级任务?如果它是轻量级的,您应该重构它的代码,以便在操作中重用。你不必从头重写它。我正在尽最大努力用英语交流,但是cron执行的Symfony任务和cron任务对我来说听起来是一样的。此任务连接到外部Web服务并更新一个表,它很复杂,因为Web服务的文档记录很差,并且它们的函数具有nom友好的名称,因此我的团队中没有人真正记得/理解此代码自一年前编写以来是如何工作的。您确定它是cron trask吗?我认为这是cron在特定时间执行的一项symfony任务。这项任务的目的是什么?这是一项长时间运行的繁重任务,cpu和/或内存使用率高,还是轻量级任务?如果它是轻量级的,您应该重构它的代码,以便在操作中重用。你不必从头重写它。我正在尽最大努力用英语交流,但是cron执行的Symfony任务和cron任务对我来说听起来是一样的。此任务连接到外部Web服务并更新一个表,它很复杂,因为Web服务的文档记录很差,并且它们的函数具有nom友好的名称,所以我的团队中没有人真正记得/理解此代码自一年前编写以来是如何工作的。谢谢。它需要更多的测试,但这正是我想要的。谢谢。它需要更多的测试,但这正是我想要的。