在按照使用者指南中的說明進行操作後,我無法透過命令列執行測試腳本。
我的控制器位於 /var/www/mysite/application/controllers/
class Tools extends CI_Controller { public function message($to = 'World') { echo "Hello {$to}!".PHP_EOL; } }
在瀏覽器中,我可以存取
http://mysite/tools/message/ben
此函數正確輸出 "Hello ben"
從終端機中,我應該可以運行:
$ php index.php 工具訊息「Ben」
我的終端應該要列印出:"Hello Ben"
然而,我得到了以下錯誤:
PHP 致命錯誤:在 /var/www/mysite/system/core/CodeIgniter.php 第 233 行找不到類別「CI_Controller」
我的伺服器是標準的 ubuntu LAMP。 Codeigniter 也是標準的,我沒有問題透過命令列運行非 CI 腳本。
我的PHP 只安裝在/usr/bin/php <-- 這篇文章暗示了直接從usr/bin/php 運行CI 的問題,然而我沒有使用共享的PHP 服務,也不明白這會對PHP 如何執行CI 腳本產生影響。
非常感謝您提前的幫忙。
要解決錯誤“找不到類別'CI_Controller'”,請嘗試轉到
Application -> Config -> database.php
,然後檢查資料庫詳細信息,例如hostname、username、password和database。已解決! (部分)問題是CodeIgniters錯誤日誌記錄。
在application/config/config.php中,我修改了以下設定屬性:
這將停用日誌記錄,並允許
$ php index.php
執行。如果有人能解釋為什麼CI只在CLI PHP上顯示此錯誤-可能會幫助其他遇到此問題並需要透過錯誤日誌記錄解決的人。