作为一个小白。。。刚看到CLI 这个玩意的时候是一脸懵比 ,官方文档上啥也没写都不知道如何入手 ,
鼓捣了 半天 在 老哥的远程教导跟东拼西凑获得的答案
总结一下
首先CLI 就相当于是给TP 另外定了一个入口文件
套用网上的资料 按着网上的步骤来
1.在入口文件中新建一个cli.php 文件cli.php 内容跟index.php不变,增加代码定义当前入口文件调用使用命令行模式
define(‘APP_MODE’,'cli');
2对APP的路径定义,还有框架引入的路径,从相对路径改成绝对路径,如:define('APP_PATH',dirname(__FILE__).'/Application/');
3在路径 /ThinkPHP/Mode 下面有个文件,名字叫做common.php ,复制一份出来,命名为cli.php,然后把里面引入日志类的代码注释或者删除掉:即干掉
'Think\Log' => CORE_PATH . ‘Log'.EXT,
就是把这段代码删掉 或者注释掉 其他的不用管
鼓捣了 半天 在 老哥的远程教导跟东拼西凑获得的答案
总结一下
首先CLI 就相当于是给TP 另外定了一个入口文件
套用网上的资料 按着网上的步骤来
1.在入口文件中新建一个cli.php 文件cli.php 内容跟index.php不变,增加代码定义当前入口文件调用使用命令行模式
define(‘APP_MODE’,'cli');
2对APP的路径定义,还有框架引入的路径,从相对路径改成绝对路径,如:define('APP_PATH',dirname(__FILE__).'/Application/');
3在路径 /ThinkPHP/Mode 下面有个文件,名字叫做common.php ,复制一份出来,命名为cli.php,然后把里面引入日志类的代码注释或者删除掉:即干掉
'Think\Log' => CORE_PATH . ‘Log'.EXT,
就是把这段代码删掉 或者注释掉 其他的不用管
贴一段这是我的入口CLI.PHP 文件
// 应用入口文件
// 开启调试模式 建议开发阶段开启 部署阶段注释或者设为false
define('APP_DEBUG', TRUE);
//CLI
define('APP_MODE','cli');
// 采用CLI运行模式运行
define('MODE_NAME','cli');
// 定义应用目录
define('APP_PATH',dirname(__FILE__).'/Application/');
//绑定模块
define('BIND_MODULE','User');//模块绑定根据自己的来
// 引入ThinkPHP入口文件
require dirname( __FILE__).'/ThinkPHP/ThinkPHP.php';
然后登录 服务liux输入 用户名 密码 执行命令php
/home/www{项目路径(从最开始开始写)}/cli.php Cli/index(控制器 /方法)
因为我用的是3.23的框架 控制方法在User/Controller/
再写详细点 上面那段命令就是通过 CLI 入口文件 /home/www{项目路径(从最开始开始写)}}/cli.php
调用了
/Application/User/Controller/(CLI)控制器/(index)方法