php – drupal的cron中的计划任务执行问题
发布时间:2020-12-13 22:44:41 所属栏目:PHP教程 来源:网络整理
导读:我有一个名为parser2的模块,它从html页面进行解析.一切都很完美,除了cron schedule.它只是没有将我的任务添加到cron任务,并且在日志中,我看到每次cron运行时都有0个计划任务.下一个问题,如果我手动启动cron几次,在我获得白屏死机后,唯一有帮助我的东西,它从D
我有一个名为parser2的模块,它从html页面进行解析.一切都很完美,除了cron schedule.它只是没有将我的任务添加到cron任务,并且在日志中,我看到每次cron运行时都有0个计划任务.下一个问题,如果我手动启动cron几次,在我获得白屏死机后,唯一有帮助我的东西,它从DB中删除parser2表,从system.table,然后运行update.php .
这是应该完成所有这些工作的代码,但我不明白这里的错误在哪里 function parser_cron_queue_info() { $info = array(); $info['get_parser_weather'] = array( 'worker callback' => 'parser_weather','time' => 10,); $query = db_select('parser_jobs','pn') ->fields('pn',array('id','time_run_in_crone')) ->condition('run_in_crone',1) ->execute(); foreach ($query as $job){ $info['get_parser_weather_'.$job->id] = array( 'worker callback' => 'parser_weather','time' => $job->time_run_in_crone,}; } return $info; } function parser_cron() { $query = db_select('parser_jobs',1) ->execute(); foreach ($query as $job){ $queue = DrupalQueue::get('get_parser_weather_'.$job->id); $queue->createItem($job->id); } } function parser_weather($job_id){ $job = parser_job_load($job_id); _parser_url_delete_all(); _parser_url_add($job->start_url); while (_parser_url_get_not_parsed()) { parser_parse2($job); }; } 解决方法
尝试获取代码生成的cron命令,然后在命令行中运行它以确保它是正确的,同时仔细检查脚本运行的用户是否有权添加新任务.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |