# 以 CLI 方式運行
除了從瀏覽器中通過 URL 來調用程序的?[控制器](http://codeigniter.org.cn/user_guide/general/controllers.html)?之外, 你也可以通過 CLI (命令行界面)的方式來調用。
目錄
[TOC=2,3]
## 什么是 CLI ?
CLI (命令行界面)是一種基于文本的和計算機交互的方式。 更多信息, 請查看?[維基百科](http://en.wikipedia.org/wiki/Command-line_interface)?。
## 為什么使用命令行?
雖然不是很明顯,但是有很多情況下我們需要使用命令行來運行 CodeIgniter。
* 使用 cron 定時運行任務,而不需要使用?wget?或?curl
* 通過函數?[is_cli()](http://codeigniter.org.cn/user_guide/general/common_functions.html#is_cli "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 也照樣工作。
- 歡迎使用 CodeIgniter
- 安裝說明
- 下載 CodeIgniter
- 安裝說明
- 從老版本升級
- 疑難解答
- CodeIgniter 概覽
- CodeIgniter 將從這里開始
- CodeIgniter 是什么?
- 支持特性
- 應用程序流程圖
- 模型-視圖-控制器
- 設計與架構目標
- 教程 - 內容提要
- 加載靜態內容
- 讀取新聞條目
- 創建新聞條目
- 結束語
- 常規主題
- CodeIgniter URL
- 控制器
- 保留名稱
- 視圖
- 模型
- 輔助函數
- 使用 CodeIgniter 類庫
- 創建類庫
- 使用 CodeIgniter 驅動器
- 創建驅動器
- 創建核心系統類
- 創建附屬類
- 鉤子 - 擴展框架核心
- 自動加載資源
- 公共函數
- 兼容性函數
- URI 路由
- 錯誤處理
- 網頁緩存
- 程序分析
- 以 CLI 方式運行
- 管理你的應用程序
- 處理多環境
- 在視圖文件中使用 PHP 替代語法
- 安全
- PHP 開發規范
- 類庫參考
- 基準測試類
- 緩存驅動器
- 日歷類
- 購物車類
- 配置類
- Email 類
- 加密類
- 加密類(新版)
- 文件上傳類
- 表單驗證類
- FTP 類
- 圖像處理類
- 輸入類
- Javascript 類
- 語言類
- 加載器類
- 遷移類
- 輸出類
- 分頁類
- 模板解析類
- 安全類
- Session 類
- HTML 表格類
- 引用通告類
- 排版類
- 單元測試類
- URI 類
- 用戶代理類
- XML-RPC 與 XML-RPC 服務器類
- Zip 編碼類
- 數據庫參考
- 數據庫快速入門: 示例代碼
- 數據庫配置
- 連接你的數據庫
- 查詢
- 生成查詢結果
- 查詢輔助函數
- 查詢構造器類
- 事務
- 數據庫元數據
- 自定義函數調用
- 數據庫緩存類
- 數據庫工廠類
- 數據庫工具類
- 數據庫驅動器參考
- 輔助函數參考
- 數組輔助函數
- 驗證碼輔助函數
- Cookie 輔助函數
- 日期輔助函數
- 目錄輔助函數
- 下載輔助函數
- 郵件輔助函數
- 文件輔助函數
- 表單輔助函數
- HTML 輔助函數
- 語言輔助函數
- Inflector 輔助函數
- 數字輔助函數
- 路徑輔助函數
- 安全輔助函數
- 表情輔助函數
- 字符串輔助函數
- 文本輔助函數
- 排版輔助函數
- URL 輔助函數
- XML 輔助函數
- 向 CodeIgniter 貢獻你的力量