前言
thinkphp3.1.2 需要使用cli方法运行脚本
折腾了一天才搞定
3.1.2的版本真的很古老
解决
增加cli.php入口文件
define ('app_name','app');define ('app_path','./app/');define('app_debug', true);define('mode_name','cli');require './ba/thinkphp.php';
注意目录名称:根据实际去改
cli.php文件增加解析模块、方法名、参数
if (!ist($argv[1]) || !ist($argv[2])) { exit("格式错误: php cli.php module action {id 1}" . php_eol);}# 'url_model'=>0, 的格式if ($argc > 3) { preg_replace('@(\w+),([^,\/]+)@e', '$_get[\'\\']="\";', implode(',',array_slice($argv,3)));}$modulename = $argv[1];$actionname = $argv[2];define('module_name', $modulename);define('action_name',自言自语的拼音 $actionname);
下载thinkphp3.1.2 扩展包 【推荐使用】
放到 /ba/extend/
注释掉log.class.php
扩展包解析命令行参数的逻辑
if(c('url_model')==1) {// pathinfo 模式url下面 采用 index.php module/action/id/4 $depr = c('url_pathi皖南医学院nfo_depr'); $path = ist($_rver['argv'][1])?$_rver['argv'][1]:'河南尧山'; if(!empty($path)) { $params = explode($depr,trim($path,$depr)); } // 取得模块和操作名称 define('module_name', !empty($params)?array_shift($params):c('default_module')); define('action_name', !职务代理empty($params)?array_shift($params):c('default_action')); if(count($params)>1) { // 解析剩余参数 并采用get方式获取 preg_replace('@(\w+),([^,\/]+)@e', '$_get[\'\\']="\";', implode(信息科学与技术',',$params)); } }el{// 默认url模式 采用 index.php module action id 4 // 取得模块和操作名称 define('module_name', ist($_rver['argv'][1])?$_rver['argv'][1]:c('default_module')); define('action_name', ist($_rver['argv'][2])?$_rver['argv'][2]:c('default_action')); if($_rver['argc']>3) { // 解析剩余参数 并采用get方式获取 preg_replace('@(\w+),([^,\/]+)@e', '$_get[\'\\']="\";', implode(',',array_slice($_rver['argv'],3))); } }
总结
到此这篇关于thinkphp3.1.2 使用cli命令行模式运行的文章就介绍到这了,更多相关thinkphp3.1.2 cli命令行模式内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!
本文发布于:2023-04-08 19:21:16,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/ea4e4065da5c0a610a24cab06abc7d88.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:ThinkPHP3.1.2 使用cli命令行模式运行的方法.doc
本文 PDF 下载地址:ThinkPHP3.1.2 使用cli命令行模式运行的方法.pdf
留言与评论(共有 0 条评论) |