ホームページ >バックエンド開発 >PHPチュートリアル >Zend フレームワーク クラスの初期化に関連する問題
Zend フレームワーク クラスの初期化に関する問題
class Db extends Zend_Db_Table {
function __construct($name='',$primary=''){
echo "***** $name******";
}
public function setName($name){
$this->_name = $name;
}
public function setPrimary($ Primary){
$this->_primary = $primary;
}
}
functionindexAction(){
$artiClass = new Db('b_arti_class','id ');
}
result
************
キャッチ可能な致命的エラー: 引数 1 は Zend_Db_Select::__construct() に渡される必要がありますZend_Db_Adapter_Abstract のインスタンスであり、null が与えられ、D:SofwampwwwlibraryZendDbTableSelect.php の 76 行目で呼び出され、D:SofwampwwwlibraryZendDbSelect.php の 163 行目で定義されています
------解決策 - -------------------
zend_db_table の継承クラスではコンストラクターを使用せず、別のコンストラクターのようなメソッドを使用することをお勧めします
保護された関数 _setup()
{
$this->_name = 'カテゴリ';
親::_setup();
}
------解決策----------------------
コンストラクターを使用する必要がある場合は、必ず呼び出してください。サブクラス内の親クラスのコンストラクター
public function __construct($name,$primary)
{
$this->_name = $name;
$this->_primary = $primary ;
親::__construct();
}