CI の組み込みセッション ライブラリを置き換えるために、ネイティブ セッション ライブラリを使用しています。クラスを拡張する必要がありますが、MY_Session.php をドロップすると、CI は古い /system/libraries/Session.php に戻ります。
Session.php のようなコア CI クラスを置き換えたクラスを拡張するにはどうすればよいですか?
CI の組み込みセッション ライブラリを置き換えるために、ネイティブ セッション ライブラリを使用しています。クラスを拡張する必要がありますが、MY_Session.php をドロップすると、CI は古い /system/libraries/Session.php に戻ります。
Session.php のようなコア CI クラスを置き換えたクラスを拡張するにはどうすればよいですか?
クラス ファイルにネイティブ ライブラリと同じ名前を付けるだけで、CodeIgniter はネイティブ ライブラリの代わりにそれを使用します。この機能を使用するには、ファイルとクラス宣言にネイティブ ライブラリとまったく同じ名前を付ける必要があります。たとえば、ネイティブの Email ライブラリを置き換えるには、application/libraries/Email.php という名前のファイルを作成します。
-ユーザーガイド
それからそれを呼び出します
class MY_Email extends CI_Email {
public function __construct()
{
parent::__construct();
}
}
サブクラスのロード:
$this->load->library('email');
編集 これを試してください:
新しいライブラリ (拡張を行っているもの) をロードするだけです:
次に、Session.php と Mysession.php があるとします。
<?php
load_class('session', false);
class Mysession extends Session {
//your code
}
MY_ name タグはまだ必要ありません。混乱を避けるために、当初の意図された目的のためにそれを予約したいと思います。
..それ以外の場合は、 include() または require() を使用してください:P