1,配置好,要执行的页面:本文为 protected/yiic.php为例子 PS:类似于yii的index.php ,就是控制台的入口文件
<?php
// 配置php控制台的入口文件
$yiic=dirname(__FILE__).'./../framework/yiic.php';
$config=dirname(__FILE__).'/config/console.php';
require_once($yiic);
?>
2,配置好product/config/console.php里面需要用到的组件,像数据库连接,和main.php一样,是控制台的配置文件。
<?php
// This is the configuration for yiic console application.
// Any writable CConsoleApplication properties can be configured here.
return array(
'basePath'=>dirname(__FILE__).DIRECTORY_SEPARATOR.'..',
'name'=>'My Console Application',
'import' => array (
'application.models.*',
'application.components.*',
),
// preloading 'log' component
'preload'=>array('log'),
// application components
'components'=>array(
'db'=>array(
'connectionString' => 'mysql:host=localhost;dbname=blog',
'emulatePrepare' => true,
'username' => 'root',
'password' => '',
'charset' => 'utf8',
// 'tablePrefix' => 'company_'
),
'log'=>array(
'class'=>'CLogRouter',
'routes'=>array(
array(
'class'=>'CFileLogRoute',
'levels'=>'error, warning',
),
),
),
),
);
3,建立继承CConsoleCommand的类,在commands目录下创建一个文件,执行任务,命名为TestCommand.php
<?php
/**
* 自动化执行 命令行模式
*/
class TestCommand extends CConsoleCommand
{
public function run($args) {
$model=new ClassSel;
$model->cname="控制台测试";
if($model->save(false)){
echo "success";
}
}
}
4,打开你的linux命令窗口,创建自动任务,讲的linux系统。
4.1 查看你的php执行文件的路径,一般都是在:/usr/bin/ 下面
4.2 安装定时任务程序
yum install vixie-cron
4.3 启动任务:
service crond start
4.3 创建定时任务:crontab -e -》 回车 -》
*/5 * * * * /usr/bin/php /home/wwwroot/default/admin/protected/yiic.php test >> /home/wwwroot/default/admin/protected/commands/test.log
我设置的是每5分钟执行一次,把执行输出结果记录到test.log中, 至于怎么设置时间的请看教程:
http://yun.itxdl.cn/course/56/learn#lesson/2729
更多crontab命令:
crontab -u //设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数
crontab -l //列出某个用户cron服务的详细内容
crontab -r //删除没个用户的cron服务
crontab -e //编辑某个用户的cron服务
希望对你们有帮助!
分享到:
相关推荐
在Yii中,创建控制台命令可以方便地执行后台任务,如定时任务。以下是一个详细的步骤来演示如何通过Yii框架通过控制台命令创建定时任务。 首先,我们需要在Yii项目路径下创建一个控制台命令文件。假设Yii项目位于`/...
在Web开发中,Yii2 Console组件常用于处理后台任务,如定时任务、数据迁移等。然而,对于需要即时响应或者非阻塞操作的任务,如注册邮件发送、短信通知等,我们可以利用Swoole扩展来实现异步处理,从而提高系统效率...
Yii2+Swoole开发的定时任务管理系统,带预警邮件通知(Crontab).zip 功能列表 用户管理 权限管理 邮件预警 立即执行任务 (python+shell) 定时任务(python+shell),支持秒级定时任务,服务稳定完美运行 定时...
在Yii框架中,定时任务是一个继承自CConsoleCommand的类。在这个类中,开发者需要实现run()方法,这个方法将在定时任务被触发时执行。 4. 在命令行环境下创建cronjob,即在服务器的crontab中添加相应的定时任务。...
"yii刷单平台.zip"中包含的项目是一个基于Yii框架构建的刷单交易任务平台源码,用于学习和交流目的。在这个平台中,我们可以深入理解Yii框架的核心特性以及如何在实际项目中运用它。 1. Yii框架简介: Yii,发音...
“yii框架中文手册教程.pdf”是Yii框架的中文版官方手册,它是学习Yii框架的重要资源。这份PDF文档通常会包括以下内容: 1. **安装与配置**:介绍如何在服务器上安装Yii,以及设置基本的项目环境。 2. **快速入门**...
3. **异步编程**:在Swoole环境下,Yii2应用可以进行异步编程,通过回调函数、Promise和协程来处理并发任务,使得系统能更有效地利用CPU和内存资源。 4. **内存管理**:Swoole支持持久化的进程和内存,这意味着在...
- **命令行工具**:通过`yiic`执行自动化任务,如创建模型、迁移数据库等。 为了充分利用Yii 2.0,你还需要熟悉PHP编程,以及Composer包管理器的使用。此外,学习如何配置和优化服务器环境,如Apache或Nginx,也是...
权限控制是后台系统的重要环节,Yii2 的 RBAC(Role-Based Access Control)允许定义角色、任务和规则,为不同角色分配不同的操作权限。这通常通过 `yii\rbac\DbManager` 实现,将权限信息存储在数据库中,便于动态...
- **Yii Console**: 提供命令行接口,用于执行后台任务,如定时任务、迁移数据库等。 - **Caching**: 强大的缓存机制,支持多种缓存策略,如文件缓存、数据库缓存、APC、Memcached和Redis等。 - **Security**: 提供...
在Yii中,Command任务处理是用于处理控制台应用程序的任务,比如定时任务、数据迁移或者批量处理等,这些任务通常不需要用户界面,只需要在后台运行即可。 首先,我们要理解Yii的Command任务处理机制。Yii的Command...
"Yii权威指南思维导图"显然是一个帮助开发者理解和掌握Yii框架核心概念和架构的工具。通过这个思维导图,我们可以深入学习Yii框架的主要组成部分,理解其类结构以及类之间的关系。 首先,让我们来看看Yii框架的基础...
Yii2.0级基于Yii1.X完全重写的,不仅是小版本升级的升级。所以想要系统学习Yii2.0这个框架这套教程可以从实战项目带你入手。不错的学习YII框架的基础课程,电商系统的结构完整、框架资源太大,传百度网盘了,链接在...
Yii 1.1.10是该框架的一个版本,它提供了丰富的特性和优化,以帮助开发者更高效地构建复杂的Web应用程序。这个开发包包含了Yii框架的核心库、相关的文档和一个具体的博客应用实例,这对于初学者和有经验的开发者来说...
Yii框架是一款高效的、基于组件的PHP开发框架,用于...总之,Yii框架中文手册教程和YII模板资源是学习和开发Yii应用的宝贵资料。通过深入学习和实践,开发者可以充分利用Yii的强大功能,构建出高效、可扩展的Web应用。
《深入理解Yii2.0》是一本干货。主要讲解Yii2.0及所代表的最新一代Web开发框架的新特性、新技术、新理念、新模式。 采用的方式是分析框架的源代码,尝试从根上进行理解和阐述,并融入个人使用Yii开发的一些经验和...