***CI的CLI运行方式
linux下的执行命令:
1、PHP解释器 2、CI根目录的index.php 3、控制器所在的文件夹 4、 控制器名称 5、 方法名称 (参数)
参考文献:
http://codeigniter.org.cn/user_guide/general/cli.html
以 CLI 方式运行
除了从浏览器中通过 URL 来调用程序的 控制器 之外, 你也可以通过 CLI (命令行界面)的方式来调用。
目录
- 以 CLI 方式运行
- 什么是 CLI ?
- 为什么使用命令行?
- 让我们试一试:Hello World!
- 就这么简单!
什么是 CLI ?
CLI (命令行界面)是一种基于文本的和计算机交互的方式。 更多信息, 请查看 维基百科 。
为什么使用命令行?
虽然不是很明显,但是有很多情况下我们需要使用命令行来运行 CodeIgniter。
- 使用 cron 定时运行任务,而不需要使用 wget 或 curl
- 通过函数 is_cli() 的返回值来让你的 cron 页面不能通过 URL 访问到
- 制作交互式的任务,例如:设置权限,清除缓存,备份等等
- 与其他语言进行集成,例如可以通过 C++ 调用一条指令来运行你模型中的代码。
让我们试一试:Hello World!
让我们先创建一个简单的控制器,打开你的文本编辑器,新建一个文件并命名为 Tools.php,然后输入如下的代码:
<?php class Tools extends CI_Controller { public function message($to = 'World') { echo "Hello {$to}!".PHP_EOL; } }
然后将文件保存到 application/controllers/ 目录下。
现在你可以通过类似下面的 URL 来访问它:
example.com/index.php/tools/message/to
或者,我们可以通过 CLI 来访问。在 Mac/Linux 下你可以打开一个终端,在 Windows 下你可以打开 “运行”,然后输入 "cmd",进入 CodeIgniter 项目所在的目录。
$ cd /path/to/project; $ php index.php tools message
如果你操作正确,你应该会看到 Hello World! 。
$ php index.php tools message "John Smith"
这里我们传一个参数给它,这和使用 URL 参数是一样的。"John Smith" 被作为参数传入并显示出:
Hello John Smith!
就这么简单!
简单来说,这就是你需要知道的关于如何在命令行中使用控制器的所有事情了。 记住,这只是一个普通的控制器,所以路由和 _remap 也照样工作。
***CI的CLI运行方式相关推荐
- CI框架 -- CLI执行php代码
什么是CLI: CLI (命令行界面)是一种基于文本的和计算机交互的方式. 更多信息, 请查看 维基百科 . 为什么使用CLI? 虽然不是很明显,但是有很多情况下我们需要使用命令行来运行 CodeIg ...
- 中文 Markdown 编写格式规范的命令行工具 lint-md
lint-md 用于检查中文 markdown 编写格式规范的命令行工具,基于 AST 开发,且方便集成 ci.Cli tool to lint your markdown file for Chin ...
- Jmeter接口测试实战分享,你一定要知道的问题总结!
Jmeter是一款性能测试工具,因轻量级.开源.社区接受度高.容易入门等优点,也被测试人员广泛用于做接口测试.在使用Jmeter做较大规模.复杂场景的接口测试时,往往会遇到一些困难.阅读本文你将了解: ...
- 每日安全资讯(2022-12-02)
author:leadlife time:2022/12/02 paper - Last paper CVE-2020-9273 ProFTPd RCE 漏洞分析与利用 CVE-2022-22972 ...
- php运行方式fpm fcgi,php如何从fpm-fcgi切换运行模式到cli
在使用一个php爬虫的时候提示一定要用cli环境 我查看了当前php版本信息如下: 我打印 PHP_SAPI 显示 fpm-fcgi 如何才能变成 cli 服务器环境是linux+nginx 补充:我 ...
- [Cake] 1. CI中的Cake
在上一篇C#Make自动化构建-简介中,简单的介绍了下Cake的脚本如何编写以及通过Powershell或者Bash在本地运行Cake脚本.本篇在此基础上,介绍下如何在CI环境中使用Cake. 1. ...
- travis-ci自动部署_如何使用Travis CI部署(几乎)零恐惧的Cloud Foundry应用
travis-ci自动部署 by Robin Bobbitt 罗宾·波比(Robin Bobbitt) 如何使用Travis CI部署(几乎)零恐惧的Cloud Foundry应用 (How to d ...
- CloudBees发布“Jenkins X”:面向部署到Kubernetes中的现代云应用的CI/CD解决方案
\ 看新闻很累?看技术新闻更累?试试下载InfoQ手机客户端,每天上下班路上听新闻,有趣还有料! \ \\ James Strachan和CloudBees团队发布了开源的"Jenkins ...
- Hive运行方式、gui
Hive运行模式: 1.CLI命令行模式:控制台 2.脚本运行模式:生产环境中使用 3.JDBC方式:hiveserver2 4.web GUI接口:hwi.hue等. 1. 交互 ① 和hdfs交互 ...
最新文章
- 别总埋汰写代码,停下总结一下吧
- cannot import name 'ImageRecordInt8Iter'
- mongodb的delete_MongoDB 删除数据库
- 卡萨帝:用发明去超越历史!15年走完百年路
- Jquery之编辑不可修改
- mysql blob key length_mysql – 没有密钥长度的密钥规范中使用的BLOB / TEXT列’bestilling’...
- 玩Python遇到的问题一二三及解决办法
- 目标检测第7步:如何在Windows 10下,配置Pycharm中的YOLOv5(5.0)虚拟环境?
- DroidBox的环境搭建与使用(Android沙箱、未验证)
- 信息学奥赛一本通——1001:Hello,World!
- php设置ip,php curl如何设置ip
- axios拦截器_Axios源码解析 —— 一个小而美的HttpClient
- 初创公司几个投资人,各占多少股份合适?
- Android 显示历史搜索记录
- 推荐10款笔者一直在使用的Chrome提效插件
- Java实现微信公众号客服功能和本地联调
- linux安装mysql5.7(修改密码策略)
- 后端程序员看前端想死(二)进入页面之后js分析
- hypervisor - qnx
- Please don't stop rua 233333
热门文章
- python自动化测试学习有用吗_python自动化测试学习-UnitTest/PyUnit的用法介绍
- 使用Android Studio打包app
- python的简单GUI(多线程时钟)
- socketio mysql_Golang + Socket.io
- python什么时候开始流行的_Python什么时候会被取代?
- 解决myeclipse里面git的更新(pull)操作问题
- 关于spark structed stream 流中的触发trigger间隔的理解
- SCPPO(九):性能优化之停工装置按照开工装置更新价格
- 波士顿动力十年对比刷屏,网友:以后该不会变成终结者吧?
- 世界经济论坛正式成立AI委员会,李开复任联席主席,Bengio李飞飞在列