实例讲解yii2.0在php命令行中运行的步骤


Posted in PHP onDecember 01, 2015

Yii中的资源是和Web页面相关的文件,可为CSS文件,JavaScript文件,图片或视频等,资源放在Web可访问的目录下,直接被Web服务器调用。

有时候有些功能需要做到计划任务中去,因此就需要yii能用php命令去执行。yii2.0是支持php命令行运行的,操作方法如下:

在yii根目录下面有个“yii”文件(不是“yii.bat”),这个文件就是入口。然后“commands”目录下会默认有个“HelloController.php”控制器文件,这个是一个demo。打开这个控制器文件,源码如下(删掉了部分注释):

<?php
namespace app\commands;
use yii\console\Controller;
class HelloController extends Controller
{
  /**
   * This command echoes what you have entered as the message.
   * @param string $message the message to be echoed.
   */
  public function actionIndex($message = 'hello world')
  {
    echo $message . "\n";
  }
}

从上面可以看出,在命令行运行时,会继承console下的Controller;而一般“controllers”目录中的控制器会继承web下的Controller。

所以在php命令行中执行yii脚本的步骤为:

1.新建一个脚本

在“commands”目录下面按照“HelloController.php”的格式新建一个控制器脚本文件。

2.在命令行执行脚本

在命令行敲入“php yii项目所在路径/yii 控制器名/方法名”,例如“php E:/wwwroot/yii2/yii hello/index”,如下图所示。

实例讲解yii2.0在php命令行中运行的步骤

需要注意的是:php一定要设置环境变量后才能这么用。想知道php是否已加入环境变量,请用“php -v”命令来查看。

Yii中的三种控制器类

base\Controller.php        这个是下面两个的基类
console\Controller.php   这个是控制台控制器
web\Controller.php        这个是web控制器

以上内容是小编通过实例讲解yii2.0在php命令行中运行的步骤,希望大家喜欢。

PHP 相关文章推荐
基于mysql的bbs设计(一)
Oct 09 PHP
php读取msn上的用户信息类
Dec 05 PHP
PHP日期处理函数 整型日期格式
Jan 12 PHP
PHP中限制IP段访问、禁止IP提交表单的代码
Apr 23 PHP
基于Snoopy的PHP近似完美获取网站编码的代码
Oct 23 PHP
PHP封装的一个支持HTML、JS、PHP重定向的多功能跳转函数
Jun 19 PHP
浅析PHP中strlen和mb_strlen的区别
Aug 31 PHP
php过滤HTML标签、属性等正则表达式汇总
Sep 22 PHP
php的GD库imagettftext函数解决中文乱码问题
Jan 24 PHP
PHP和C#可共用的可逆加密算法详解
Oct 26 PHP
thinkPHP导出csv文件及用表格输出excel的方法
Dec 30 PHP
Redis构建分布式锁
Mar 28 PHP
PHP简单的MVC框架实现方法
Dec 01 #PHP
分享PHP源码批量抓取远程网页图片并保存到本地的实现方法
Dec 01 #PHP
基于php实现七牛抓取远程图片
Dec 01 #PHP
使用Huagepage和PGO来提升PHP7的执行性能
Nov 30 #PHP
深入解析PHP中foreach语句控制数组循环的用法
Nov 30 #PHP
简单了解PHP编程中数组的指针的使用
Nov 30 #PHP
PHP 微信支付类 demo
Nov 30 #PHP
You might like
php 向访客和爬虫显示不同的内容
2009/11/09 PHP
PHP实现的json类实例
2015/07/28 PHP
微信自定义菜单的创建/查询/取消php示例代码
2016/08/05 PHP
thinkPHP中验证码的简单实现方法
2016/12/05 PHP
超棒的javascript页面顶部卷动广告效果
2007/12/01 Javascript
JS+css 图片自动缩放自适应大小
2013/08/08 Javascript
setTimeout()递归调用不加引号出错的解决方法
2014/09/05 Javascript
超棒的响应式布局jQuery插件Freetile.js
2014/11/17 Javascript
js的toLowerCase方法用法实例
2015/01/27 Javascript
JavaScript 事件对象介绍
2015/04/13 Javascript
JQuery插件ajaxfileupload.js异步上传文件实例
2015/05/19 Javascript
使用Jasmine和Karma对AngularJS页面程序进行测试
2016/03/05 Javascript
jQuery Validate 数组 全部验证问题
2017/01/12 Javascript
原生js编写2048小游戏
2017/03/17 Javascript
浅析Vue项目中使用keep-Alive步骤
2018/07/27 Javascript
webpack4 入门最简单的例子介绍
2018/09/05 Javascript
详解Vue源码学习之双向绑定
2019/04/10 Javascript
JS删除String里某个字符的方法
2021/01/06 Javascript
vue cli3.0打包上线静态资源找不到路径的解决操作
2020/08/03 Javascript
vue 单页应用和多页应用的优劣
2020/10/22 Javascript
[01:47]2018年度DOTA2最具人气解说-完美盛典
2018/12/16 DOTA
Python压缩和解压缩zip文件
2015/02/14 Python
对Python 网络设备巡检脚本的实例讲解
2018/04/22 Python
详解django中使用定时任务的方法
2018/09/27 Python
Python3.8中使用f-strings调试
2019/05/22 Python
Python爬虫 scrapy框架爬取某招聘网存入mongodb解析
2019/07/31 Python
PyQt中使用QtSql连接MySql数据库的方法
2020/07/28 Python
Python加载数据的5种不同方式(收藏)
2020/11/13 Python
Html5 webview元素定位工具的实现
2020/08/07 HTML / CSS
切尔西足球俱乐部官方网上商店:Chelsea FC
2019/06/17 全球购物
顶岗实习接收函
2014/01/09 职场文书
全陪导游欢迎词
2014/01/17 职场文书
市场推广策划方案
2014/06/02 职场文书
优秀护士事迹材料
2014/12/25 职场文书
围城读书笔记
2015/06/26 职场文书
解决MySQL存储时间出现不一致的问题
2021/04/28 MySQL