yii2的定时任务】的更多相关文章

php yii minsheng-cancel-account/cancel-applied-account…
Yii2的定时任务可以有两种写法,原理都是通过服务器的定时任务去调用 1.通过调用指定的URL访问 就相当于在浏览器中访问 2.通过console调用 下面我们就来说说Console 是如何实现定时任务的 一.首先在创建Controlle 并继承 yii\console\Controlle; <?php namespace console\controllers; use yii\console\Controller; class TestController extends Controlle…
Yii2的定时任务可以有两种写法,原理都是通过服务器的定时任务去调用 1.通过调用指定的URL访问 就相当于在浏览器中访问 2.通过console调用 下面我们就来说说Console 是如何实现定时任务的 一.首先在创建Controlle 并继承 yii\console\Controller; <?php namespace console\controllers; use yii\console\Controller; class TestController extends Controll…
Yii中的资源是和Web页面相关的文件,可为CSS文件,JavaScript文件,图片或视频等,资源放在Web可访问的目录下,直接被Web服务器调用. 有时候有些功能需要做到计划任务中去,因此就需要yii能用php命令去执行.yii2.0是支持php命令行运行的,操作方法如下: 在yii根目录下面有个“yii”文件(不是“yii.bat”),这个文件就是入口.然后“commands”目录下会默认有个“HelloController.php”控制器文件,这个是一个demo.打开这个控制器文件,源码…
yii开发的项目需要使用定时任务其实也可以使用一些单独的脚本文件来完成,但若是定时任务代码中需要使用到项目中的一些类,特别是需要使用应用对象Yii::$app的时候,单独的脚本想要完成就比较麻烦了.这时候,别忘了yii除了backend和frontend之外,还有console.是的,在yii项目中,定时任务可以通过控制台应用来实现. 首先在console/controller目录下创建一个控制器,然后写一个方法用于运行你的定时任务代码,以下是一个简单的例子: <?php /** * 定时任务控…
一.编辑yii console/controllers TestController.php 二./usr/ 包括与系统用户直接有关的文件和目录创建sh_scripts目录,/usr/sh_scripts/目录下创建sh文件,此处为test-cron.sh文件内容如下 #!/bin/sh php /{you item path}/yii test/index 三.以root用户身体新增cron任务执行sudo su命令切换到root用户,输入密码 password进入/etc/cron.d目录,…
It is not safe to rely on the system's timezone settings 在写php程序中有时会出现这样的警告:PHP Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function…
Sites 网站 yiifeed:Yii 最新动态都在这里 yiigist:Yii 专用的 Packages my-yii:Yii 学习资料和新闻 Docs 文档 Yii Framework 2.0 类参考手册 Yii Framework 2.0 权威指南 Yii Framework 2.0 权威指南镜像(每次github有提交时15分钟后自动更新比官方那个及时) PDF 版本的权威指南 Yii Framework 2.0 中文权威指南 Yii2 官方文档及其他文本的中文本土化项目 yii2-c…
public function searchWithRelated() {         $criteria = new CDbCriteria; $criteria->together = true; //without this you wont be able to search the second table's data         $criteria->with = array('mySecondTable');         $criteria->compare(…
YII2可以在命令行执行php命令,作为半路出家的撩妹君可谓是抠脚福音.作为一个屌丝级的程序员必须要有智能提示代码的IDE,比如PHPstorm.至于如何免费使用嘛..... 首先明白YII2自带的command示列 \app\commands\HelloController class HelloController extends Controller { /** * This command echoes what you have entered as the message. * @p…
为什么要做crontab脚本 我们的项目使用YII2开发,并不是很大的一个电商平台,pv.IP访问量并不是很高,但客户的数据是日积月累已经产生100万条数据了,之前更新订单等数据使用定时脚本直接访问内网的一个url,因为更新订单只是部分数据,php后台执行10s完全可以胜任. 现在需求是这样的:之前系统没有考虑客户的积分等级,现在需要加入这个功能,所以必须给客户表添加积分字段,在添加一个积分记录表,那么之前老客户数据因下单,本应该也生成对应的积分等级,而且要每晚上执行一次昨天下单客户对应的成长值…
YII2 console中写定时任务, 想使用其他模块的model, 在 console的yii.php 入口文件中引入其他模块的配置文件, 否者会出现model等命名空间找不到的问题. 还有, 命名空间如果是console\controller不生效, 可能是console的config中又引入了外层公共的config,被后者覆盖了.  所以换成app\controller的时候可以访问 console执行技巧: 命令行执行 执行 : php .\yii.php 看显示的,有可用方法列表: -…
1.yii2中的console <?php /** * @link http://www.yiiframework.com/ * @copyright Copyright (c) 2008 Yii Software LLC * @license http://www.yiiframework.com/license/ */ namespace app\commands; use yii\console\Controller; /** * This command echoes the first…
Yii2 干货集,欢迎提交 Pull Requests.(提交过来的开源项目最好是你用过的,并且觉得好用的) Docs 文档 Yii Framework 2.0 类参考手册 Yii Framework 2.0 权威指南 Yii Framework 2.0 权威指南镜像(每次github有提交时15分钟后自动更新比官方那个及时) PDF 版本的权威指南 Yii Framework 2.0 中文权威指南 Yii2 官方文档及其他文本的中文本土化项目 yii2-cookbook yii2-Cookbo…
class HelloController extends Controller { /** * This command echoes what you have entered as the message. * @param string $message the message to be echoed. * @return int Exit code */ public function actionIndex($message = 'hello world') { echo $mes…
项目开发中,如果有定时任务的业务要求,我们会使用linux的crontab来解决,但是它的最小粒度是分钟级别,如果要求粒度是秒级别的,甚至毫秒级别的,crontab就无法满足,值得庆幸的是swoole提供的强大的毫秒定时器. 应用场景举例我们可能会遇到这样的场景: 场景一:每隔30秒获取一次本机内存使用率 场景二:2分钟后执行报表发送任务 场景三:每天凌晨2点钟定时请求第三方接口,如果接口有数据返回则停止任务,如果接口由于某种原因没有响应或者没有数据返回则5分钟后继续尝试请求该接口,尝试5次后仍…
Java的定时任务有以下几种常用的实现方式: 1)Timer 2)ScheduledThreadPoolExecutor 3)Spring中集成Cron Quartz 接下来依次介绍这几类具体实现的方式 1. Timer 利用Java自带的定时类java.util.Timer以及java.util.TimerTask共同实现多任务的定时触发与周期性执行,主要包含以下两个方法: void schedule(TimerTask task, long delay, long period); void…
在应用里经常都有用到在后台跑定时任务的需求.举个例子,比如需要在服务后台跑一个定时任务来进行非实时计算,清除临时数据.文件等.在本文里,我会给大家介绍3种不同的实现方法: 普通thread实现 TimerTask实现 ScheduledExecutorService实现 普通thread 这是最常见的,创建一个thread,然后让它在while循环里一直运行着,通过sleep方法来达到定时任务的效果.这样可以快速简单的实现,代码如下: public class Task1 { public st…
熟悉linux的朋友应该知道在linux中可以使用crontab设置定时任务.可以通过命令crontab -e编写任务.当然也可以直接写配置文件设置任务. 但是有时候希望通过脚本自动设置,比如我们应用程序部署时等.有需求当然就得想办法解决,不然在程序猿界混(一群自得其乐的猿). 下面进入正题,开始想通过以写文件的形式设置,通过在配置文件中直接追加一行即可.但是读写文件难免有点繁琐,再比如:设置任务时要检查任务是否已经存在:根据输入参数设置相应的任务等.以读写文件难免不太合适.所以想到了"万能&q…
FluentScheduler是.NET开源处理定时任务组件 1.任务的创建注册 public static void TaskActionByMinutes(Action action, int count,string TaskName) { FluentScheduler.JobManager.AddJob(action, t => { t.WithName(TaskName).ToRunNow().AndEvery(count).Minutes(); }); } FluentSchedu…
定时任务大家都挺说过,就好比你手机上的闹钟,到了指定的时候就会响起. 今天在对redis缓存进行定时储存时又操作了一把,发现一些细节,写的不好.大家就将就看吧, 首先 简单介绍一下linux 例行性工作 两种方式, 主要有两种: at   (和下面一样,只是它只定时执行一次就结束) crontab 演示定时执行php程序将数据插入数据库: 一个案例表:blog CREATE TABLE `blog` ( `blog_id` ) unsigned NOT NULL AUTO_INCREMENT,…
在项目中使用定时任务是常有的事,比如每天定时进行数据同步或者备份等等. 以前在从事C语言开发的时候,定时任务都是通过写个shell脚本,然后添加到linux定时任务中进行调度的. 现在使用SpringMVC之后,一起都变得简单了o(∩_∩)o 有两种配置方式,我都分别讲讲,但是看了后你肯定只会选择后面那种,没错! 我也是用后面那种方式 第一种配置方式:这个比较复杂,配置的地方有点多,稍不留意就不成功,具体看代码了 <?xml version="1.0" encoding=&quo…
我们先来看下行为在 Yii2 中的使用,如下内容摘自 Yii2中文文档 行为是 [[yii\base\Behavior]] 或其子类的实例.行为,也称为 mixins,可以无须改变类继承关系即可增强一个已有的 [[yii\base\Component|组件]] 类功能.当行为附加到组件后,它将"注入"它的方法和属性到组件,然后可以像访问组件内定义的方法和属性一样访问它们.此外,行为通过组件能响应被触发的事件,从而自定义或调整组件正常执行的代码. 定义行为 要定义行为,通过继承 [[yi…
在我们的项目开发过程中,经常需要定时任务来帮助我们来做一些内容,springboot默认已经帮我们实行了,只需要添加相应的注解就可以实现 1.pom包配置 pom包里面只需要引入springboot starter包即可 <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifa…
上一篇文章网站实现微信登录之嵌入二维码中描述了如何在自己的登录页面内嵌入登录二维码,今天的这篇文章主要是描述下在扫码成功之后微信重定向回网站后登录逻辑的处理,其实也就是验证身份信息,授权用户登录的逻辑.这里说句题外话,写博客复习已经做过的项目真的有助于自己对已经写过代码和业务逻辑的理解,说不定还有意外的收获.所谓,“温故而知新”,我会保持写博客的习惯. 1,微信扫码成功之后 在用户扫码成功之后,pc端网站上的二维码会出现如下的提示:(这里是用的微信开发文档中的例子1号店网站用来演示效果). 这里…
之前写了一篇yii2获取登录前的页面url地址的文章,然后发现自己对于网站实现微信扫码登录功能的实现不是很熟悉,所以,我会写2-3篇的文章来描述下一个站点如何实现微信扫码登录的功能,来复习下微信扫码登录网站的基本开发过程和需要注意的地方.这是第一篇,主要是描述如何在自己的登录页面内嵌入登录二维码.按照微信开放平台开发者文档网站应用微信登录开发指南中的一步一步来即可. 1,要扫码登录首先要有码 先看看文档中给提供的嵌入二维码的示例代码: 需要先引入微信提供的js文件 <script src="…
对于一个有登录限制(权限限制)的网站,用户输入身份验证信息以后,验证成功后跳转到登录前的页面是一项很人性化的功能.那么获取登录前的页面地址就很关键,今天在做一个yii2项目的登录调试时发现了一些很有意思的问题,记录下来. 1,场景描述 网站SiteA上的页面Page2需要登录后才能查看,Page2的链接放在页面Page1的一个按钮Button上,Page1在登录前后都是可以访问的,SiteA只提供了微信扫码登录的入口. 2,功能需求 假定访客User已经在SiteA上注册过,但当前未登录.Use…
周六闲来无事,就试着安装和部署下yii2,安装过程没什么问题,但部署到nginx上时遇到了502 bad gatewary问题,折腾了半天才搞定.这个问题是我以前在部署yii2时没有遇到过的,因此记在这里以备忘. 1,安装和部署环境 操作系统:macOS,php版本:5.6,nginx版本:1.10.1,yii2版本:2.0. 2,yii2的安装 yii2的安装很简单,参考官网的手册即可.我这里安装的是yii2-app-advanced(Yii 2 Advanced Project Templa…
这里有几个概念 权限: 指用户是否可以执行哪些操作,如:编辑.发布.查看回帖 角色 比如:VIP用户组, 高级会员组,中级会员组,初级会员组 VIP用户组:发帖.回帖.删帖.浏览权限 高级会员组:发帖.回帖.浏览权限 中级会员组:回帖.浏览权限 初级会员组:浏览 在Yii2.0中 yii\rbac: Item  为角色或者权限的基类,其中用字段type来标识.1代表角色,2代表权限 yii\rbac: Role  为代表角色的类 yii\rbac: Permission  为代表权限的类 yii…
在我们编程过程中如果需要执行一些简单的定时任务,无须做复杂的控制,我们可以考虑使用JDK中的Timer定时任务来实现.下面LZ就其原理.实例以及Timer缺陷三个方面来解析JavaTimer定时器. 一.简介 在Java中一个完整定时任务需要由Timer.TimerTask两个类来配合完成. API中是这样定义他们的,Timer:一种工具,线程用其安排以后在后台线程中执行的任务.可安排任务执行一次,或者定期重复执行.由TimerTask:Timer 安排为一次执行或重复执行的任务.我们可以这样理…