1.能夠按照Ci官方文件的指導來進行操做php
讓咱們先建立一個簡單的控制器,打開你的文本編輯器,新建一個文件並命名爲 Tools.php,而後輸入以下的代碼:windows
<?php class Tools extends CI_Controller { public function message($to = 'World') { echo "Hello {$to}!".PHP_EOL; } }
而後將文件保存到 application/controllers/ 目錄下。app
如今你能夠經過相似下面的 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! 。this
$ php index.php tools message "John Smith"
這裏咱們傳一個參數給它,這和使用 URL 參數是同樣的。"John Smith" 被做爲參數傳入並顯示出:url
Hello John Smith!
2.須要注意如下狀況可能致使執行或者輸出內容失敗spa
首先要檢查下CI框架中的配置文件config.php中的參數以下:命令行
/* |-------------------------------------------------------------------------- | URI PROTOCOL |-------------------------------------------------------------------------- | | This item determines which server global should be used to retrieve the | URI string. The default setting of 'REQUEST_URI' works for most servers. | If your links do not seem to work, try one of the other delicious flavors: | | 'REQUEST_URI' Uses $_SERVER['REQUEST_URI'] | 'QUERY_STRING' Uses $_SERVER['QUERY_STRING'] | 'PATH_INFO' Uses $_SERVER['PATH_INFO'] | | WARNING: If you set this to 'PATH_INFO', URIs will always be URL-decoded! */ //$config['uri_protocol'] = 'REQUEST_URI'; $config['uri_protocol'] = 'AUTO';
$config['uri_protocol'] 參數設置爲‘REQUEST_URI’,將會致使命令行執行失敗。code
若所在項目中有url權限控制,記得把要執行文件的路徑放到白名單中。
在Windows下環境執行,須要配置php的環境變量
/* * windows下cmd執行操做 * 當前CI框架的入口文件index.php所在目錄 D:\workspace\network\trunk\public * index.php 爲入口文件 * crontab文件夾處在application/controllers下面,已加入白名單 * tools爲crontab下面的文件,message爲tools.php中的方法, * tom1112爲傳入的變量值 */ D:\workspace\network\trunk\public>php index.php crontab/tools message/tom1112 /*輸出*/ Hello tom1112!