laravel Task Scheduling(任务调度)在windows下的使用详解

 更新时间:2019年10月22日 18:31:50   作者:键盘钢琴师  
今天小编就为大家分享一篇laravel Task Scheduling(任务调度)在windows下的使用详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

前言

laravel的任务调度是很好用的,因为Laravel提供了平滑而又富有表现力地调度器,并且服务器上只需要一个Cron条目即可,这使我们从编写手动写crontab中解放出来,使得程序重新获得定时任务的控制权。

但是,我们发现laravel的文档中只提供了linux/unix下的解决方案,但是我们大多数时候本地开发环境都是在windows下搭建的,所以,我们需要解决这些问题。

问题

本篇博客主要是围绕着如下几个问题展开

1. windows下,怎么使用laravel任务调度?

2. windows的计划任务能否替代crontab的工作?

3. 如何更好的使用windows的计划任务和laravel搭档?

解决方案

主要用到了windows任务计划程序,bat批处理,vbs脚本,有兴趣可以了解。

通过计划任务和批处理

这也是大家用到最多的方式了,stackoverflow一大半的回答都是这个。

1. 首先右键->新建->文本文档,任何位置都可以。   

2. 将如下代码拷贝进去。第一行的意思是进去到项目目录,第二行语句是执行artisan命令

cd /d E:\\WWW\laravel\

php artisan schedule:run 1>> NUL 2>&1

3. 然后另存为.bat的文件就好啦,名字随意,后缀.bat。   

4.然后就是创建计划任务,步骤图片如下所示,填写红框区域就好了

这个时候就会去调用laravel的任务调度了(前提是你已经在laravel里面编写好了任务调度),但是我们会发现,没过一分钟,都会有个dos命令的黑框弹出来,然后运行完了之后再关闭,这样会分散我们的注意力,于是就有了改进方案,请看方案二。   

通过vb脚本,实现自动任务的静默执行

前提是,你已经做完了第一步所有操作,会发现dos会自动弹出来执行程序,一分钟一次(下图所示),人都会逼疯,所以有了此方案。

1. 首先你已经做完了解决方案第一部分的所有操作

2. 在任何位置(只要你记得),新建一个文本文档,然后编辑如下代码进去,最后另存为.vbs文件

Set ws = CreateObject("Wscript.Shell") 
ws.run "cmd /c E:\laravel.schedule.bat",vbhide

3.回到解决方案第一部分的第4步骤,编辑计划任务,将操作里面打开程序,从.bat脚本换成.vbs文件,步骤如下     

这个时候,你会发现,你的计划程序任然在进行,但是再也看不到烦人的dos窗口啦,这样也就实现了linux下的crontab的功能啦。

总结

ok,弄这个,包括测试,也花了不少时间,但是编程的乐趣不就是对未知的探索吗? laravel确实是一个好的框架,接下来,我还会写关于laravel邮件,队列等博客。但是突然发现vb好像也挺有用处的,我有不少大胆的想法了

以上这篇laravel Task Scheduling(任务调度)在windows下的使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • thinkphp3.x连接mysql数据库的方法(具体操作步骤)

    thinkphp3.x连接mysql数据库的方法(具体操作步骤)

    这篇文章主要介绍了thinkphp3.x连接mysql数据库的方法,详细分析了thinkPHP3.x操作数据库的具体步骤,包括惯例配置文件设置,sql语句创建表以及针对数据库的数据插入操作等,需要的朋友可以参考下
    2016-05-05
  • php在线生成ico文件的代码

    php在线生成ico文件的代码

    php在线生成ico文件的代码...
    2007-10-10
  • PHP调用.NET的WebService 简单实例

    PHP调用.NET的WebService 简单实例

    这篇文章主要介绍了使用PHP调用.NET的WebService的一个简单实例,十分的简单,有需要的小伙伴可以自己扩展下,如有疑问请留言。
    2015-03-03
  • Elasticsearch属性单词常用解析说明

    Elasticsearch属性单词常用解析说明

    这篇文章主要介绍了Elasticsearch属性单词常用解析说明,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • TP5.0框架实现无限极回复功能的方法分析

    TP5.0框架实现无限极回复功能的方法分析

    这篇文章主要介绍了TP5.0框架实现无限极回复功能的方法,结合实例形式分析了thinkPHP5.0框架下无限极回复功能相关的数据库、评论功能及界面布局实现方法,需要的朋友可以参考下
    2019-05-05
  • tp5递归 无限级分类详解

    tp5递归 无限级分类详解

    今天小编就为大家分享一篇tp5递归 无限级分类详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • php使用函数pathinfo()、parse_url()和basename()解析URL

    php使用函数pathinfo()、parse_url()和basename()解析URL

    众所周知在PHP中函数pathinfo()、parse_url()和basename(),这三个都是解析URL的函数,但是也存在一些区别,下面列举了一些实例,通过实例更容易理解这三个函数的使用方法和技巧,有需要的朋友可以参考借鉴,感兴趣的朋友们下面来一起学习学习吧。
    2016-11-11
  • thinkphp3.x中变量的获取和过滤方法详解

    thinkphp3.x中变量的获取和过滤方法详解

    这篇文章主要介绍了thinkphp3.x中变量的获取和过滤方法,结合实例分析了thinkPHP针对各种常见变量如get、post、cookie、session、URL等的获取及过滤等技巧,需要的朋友可以参考下
    2016-05-05
  • PHP中的正则表达式实例详解

    PHP中的正则表达式实例详解

    在编程里基本都会用到正则表达式来处理数据,那么下面就具体在PHP中怎么运用吧,本文通过具体的实例,给大家讲解了PHP中正则表达式的使用方法。
    2017-04-04
  • php 猴子摘桃的算法

    php 猴子摘桃的算法

    这篇文章主要介绍了php 猴子摘桃的算法,需要的朋友可以参考下
    2017-06-06

最新评论