Yii1版本下控制台应用的使用

1、前言

很多时候,需要执行脚本任务,这时候,大多数我是不希望打开一个浏览器,输入地址来跑脚本的,这样我感觉很不爽,这时候,Yii1版本也是自带控制台下执行脚本的,具体实现步骤如下:

2、command下console配置文件说明

  • 在你当前应用下config目录下,应该是有console.php控制台配置文件的,如果没有,那就从下载Yii1框架并把console.log复制过来吧,或者你自己创建console.php,并把它加载到\protected\yiic.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',
);
  • 把console.php加载到\protected\yiic.php文件中

3、command下命令简介

  • 认识下不同平台下执行脚本的文件

  • windows平台下,应用目录下执行yiic.bat,会看到当前项目下可用的控制台脚本命令,如下所示:

4、实战:创建一个控制台应用command

控制台脚本命令文件存放于protected/commands,由CConsoleApplication::commandPath变量指定了存放位置。控制台脚本类必须继承CConsoleCommand,类名格式遵循首字母大写其余小写并加一个后缀Command,例如XyzCommand,Xyz为脚本命令名称,名称区分大小写。

接着,在控制台下输入yiic.bat delete log, 如下:

到此,一个简单的控制台脚本命令就此实现,展示的只是最简单的一个脚本,也可以像Web应用端一样来操作数据库,可以用Yii::app()来操作控制台应用实例,也可以用Yii::app()->db来操作数据库,前提是,你得将数据库配置写入console.php配置文件。

参考资料

posted @   才鱼  阅读(562)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
点击右上角即可分享
微信分享提示