CodeIgniter には、プロジェクトに固有の多くのスクリプトが含まれていることがよくあります。たとえば、次のようになります。
<?php
// Load many things
$this->load->model('news_model');
$this->load->helper('utility_helper');
$news = $this->news_model->get_basic_news();
// For moment no news
$view_datas['news']['check'] = false;
if ($news) {
$view_datas['news'] = array(
'check' => true,
'news' => _humanize_news($news)
);
}
?>
このスクリプトはさまざまなコントローラーで使用されています。現時点では、scripts
フォルダーを作成し、そのようにインポートしていますinclude(APPPATH . 'scripts/last_news.php');
。この問題を処理する最良の方法ではないと確信しています。それについて何か考えはありますか?
更新:
回答に記載されている解決策は、helper
またはを使用することlibrary
です。以前のコードの書き直しを想像してみましょう:
class Scripts {
public function last_news() {
// Load many things to use
$CI =& get_instance();
$CI->load->model('news_model');
$CI->load->model('utility_helper');
$news = $CI->news_model->get_basic_news();
// Avoid the rest of code
}
}