ファイルを変更することで、ライブラリを自動ロードできapplication/config/autoload.php
ます。
探す :
$autoload['libraries'] = array();
で置き換えます:
$autoload['libraries'] = array('calendar');
すべてのページに同じカレンダーをロードするには、application/core
フォルダーに親コントローラーを作成することをお勧めします。
abstract class BaseController extends CI_Controller
{
protected $data;
public function __construct()
{
parent::__construct();
$this->data = array();
$calendarData = array(
3 => 'Polska - Anglia'
);
$this->data['calendar'] = $this->calendar->generate('', '', $calendarData);
}
}
BaseController
その後、すべてのコントローラーでそのクラスを拡張できます。
class Calendar extends BaseController {
function index()
{
$this->load->view('main/calendar', $this->data);
}
}
$this->data
クラスの保護されたメンバーに基づいて構築するために常に使用するようにしてください。
最後に、BaseController
自動ロードされないため、どこにでも含めたくないでしょう。autoload または config ファイルの最後に次のメソッドを追加することをお勧めします。
/**
* Extra autoload function. Loads core classes automatically.
* @param type $class The class to load.
*/
function __autoload($class)
{
if (strpos($class, 'CI_') !== 0)
{
if (file_exists($file = APPPATH . 'core/' . $class . EXT))
{
include $file;
}
}
}
これにより、フォルダーにあるクラスを自動ロードできapplication/core
ます。このソリューションは複雑に思えるかもしれませんが、セットアップが完了したら. BaseController
ヘッダーやフッターなど、すべてのページに適用できる 機能を に追加できます。
お役に立てれば!