CI_Model
と呼ばれるクラスを持つがありXray
ます。Pages
アプリケーション内のすべてのページを処理するというコントローラークラスがあります。これらのページの1つはと呼ばれworker.php
ます。CLIworker.php
を使用して実行します。Supervisord
Xray
からの機能にアクセスできるようにしたいがworker.php
、コマンドラインからはアクセスできないようにしたい(実行後はコマンドラインを使用しないworker.php
)。
CI_Model
と呼ばれるクラスを持つがありXray
ます。Pages
アプリケーション内のすべてのページを処理するというコントローラークラスがあります。これらのページの1つはと呼ばれworker.php
ます。CLIworker.php
を使用して実行します。Supervisord
Xray
からの機能にアクセスできるようにしたいがworker.php
、コマンドラインからはアクセスできないようにしたい(実行後はコマンドラインを使用しないworker.php
)。
Xrayをモデルまたはライブラリのいずれか適切な方としてロードし、通常どおりアクセスします
class Pages extends CI_Controller {
function worker()
{
$this->load->library('Xray');
echo $this->xray->my_func();
}
}
外部にロードされたスクリプトにCodeIgniter機能を含めるために必要なコードは次のとおりです。
ob_start();
include('/path/to/your/index.php');
ob_end_clean();
$ci =& get_instance();
$ci->load->model('xray');
したがって、問題はCI
インスタンスがなく、したがって何もロードされないということでした。
Ellislabsフォーラムから取得
問題は$this
現在null
です。
最初に親コンストラクターを呼び出します。
function __construct()
{
parent::__construct();
}
検査するparent
と、が表示class CI_Controller
され、そこからfunction __contruct()
uppを正しく起動するのに役立ちます。
今、あなた$this
はオブジェクトであり、あなたはすることができます
$this->config->load()
また$this->load->library('Xray');