# CodeIgniter 用户指南 版本 2.2.0

编辑文档、查看近期更改请 登录 或 注册 找回密码

搜索用户指南

查看原文

# 以CLI方式运行

除了可以在浏览器中通过URL调用一个 控制器 外，也可以通过命令行接口(CLI)调用。

- 什么是CLI？
- 为什么使用这种方式？
- 它如何工作？

## 什么是CLI？

命令行接口是一种基于文本的和计算机交互的方式。 如果想查看更详细说明，请看Wikipedia article.

## 为什么使用命令行？

虽然不是必须的，但在某些情况下我们会用到命令行

- 使用 cron 定时运行任务而不需要使用 wget 或 curl
- 通过检查 `$this->input->is_cli_request()` 让你的 cron 任务无法通过网址访问到
- 让交互式任务可以做设置权限、清空缓存、执行备份等操作
- 与其他语言进行集成。比如一个 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`

除此之外，我们也可以在 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 也照样工作。

翻译贡献者: baiyuxiong, csfhc, Hex, tinsn, upsuper, yinsigan
最后修改: 2013-11-02 07:39:23