使用框架的php假设使用定时服务Cronjob

工作须要用php开发了个监控的小程序,既然是监控就须要定时运行。

之前我用的是chrome加个定时刷新的小插件,放在server上执行。也能实现,就是别扭。

通用正规的做法应该是:linux上的Cron和windows上的计划任务。

使用php.exe运行脚本。win中还要多写个bat文件,非常多文章中有提及。

个人不习惯用ignore_user_abort(true)

但存在一个问题,就是执行的php文件仅仅能是简单的脚本,不能使用框架,由于框架的相对文件夹路径导致执行出错。既然是监控程序。肯定要用到数据库。并且还是习惯MVC,不用框架毕竟麻烦些!


怎么解决?

曲线一下,通过httpclient向server发请求的方式实现。

首先建立个cron.php文件

<?

php require_once (__DIR__ . '/yq/Lib/ORG/HttpClient.class.php'); //我用的是thinkphp $client = new HttpClient ( "192.168.120.12", 8011 ); $url = '/yuqing'; //这里是要刷新的地址 $res = $client->get ( $url ); if ($res) { $content = $client->getContent (); } ?

>

然后建立批处理文件

@echo off
echo "舆情监控系统採集中.."
"F:xamppphpphp.exe" -f "F:xampphtdocsyuqingcron.php"

这样就行既使用框架。又可以定时执行了

原文地址:https://www.cnblogs.com/blfbuaa/p/6991553.html