我在让一个简单的 Controller 作为 shell 命令运行时遇到了问题。
Controller 很简单:
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
class Check_C extends CI_Controller {
// Fire up the new controller, make sure to extend the parent
public function __construct(){
parent::__construct();
}
public function runcheck(){
echo 'HI'; //$this->input->is_cli_request();
}
}
?>
我从应用程序的根目录运行的命令是:
php index.php check_c runcheck
输出是:
PHP 警告:模块“mysql”已在第 0 行以未知方式加载
现在,我做了一些搜索,发现它可能是我的 php 安装的编译和/或配置方式。
我已经验证,这是在 Ubuntu Server 13.10 上默认安装的 PHP...所以我不知道 mysql 是否与 PHP 兼容。我知道该扩展已加载到我的 php.ini 文件中,除此之外,我没有在网站的任何页面上收到此警告
。
我该如何解决?
最佳答案
此错误通常是在加载扩展程序两次时引起的。您已经验证扩展正在由您的 php.ini 文件加载。检查扩展名是否也被加载到 conf.d(可能在 mysql.ini 文件)文件夹下的文件中。不确定这些文件在 Ubuntu 中的位置,但这可能是您的问题。如果它实际上被加载了两次,则禁用一次。这应该可以解决问题。
关于php - 带有 CLI 脚本的 Codeigniter 站点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22231797/