数据库初始化父类继承的有关问题

WBOY
Freigeben: 2016-06-13 11:52:47
Original
795 Leute haben es durchsucht

数据库初始化父类继承的问题
小弟刚开始学ZendFramework框架,有个问题想请教各位大神

数据库初始化代码,我原先写在Bootstrap类中,是没有问题的。
写在控制器的init()方法里也可以。
但是我想抽象出一个类,并继承这个类,就是不行
总是报错 An error occurred     Application error,错误日志也没有东西
我觉得应该是没有调用父类的init()方法导致没有初始化数据库造成的
但是应该怎么修改代码呢,求指教

下面是我的代码

1 父类 BaseController 

<br />class BaseController  extends Zend_Controller_Action{<br />	<br />	public function init()<br />	{<br />		//初始化数据库适配器<br /> 		$url = constant("APPLICATION_PATH").DIRECTORY_SEPARATOR.'configs'.DIRECTORY_SEPARATOR.'application.ini';<br /> 		$dbconfig = new Zend_Config_Ini($url,'mysql');<br /> 		$db = Zend_Db::factory($dbconfig->db);<br /> 		$db->query('SET NAMES UTF8');<br /> 		Zend_Db_Table::setDefaultAdapter($db);<br /> 		//echo "<pre class="brush:php;toolbar:false">"; 通过访问base控制器测试这里是有值的<br /> 		//print_r($db);<br /> 		//exit();<br />	}<br />	<br />	public function indexAction()<br />	{<br /><br />	}<br />}<br />
Nach dem Login kopieren


2 IndexController
<br />require_once   APPLICATION_PATH. '/models/tb_user.php';<br />require_once  'BaseController.php';<br /><br />//有对数据库进行操作的控制器继承BaseController,没有对数据库进行操作的控制器继承Zend_Controller_Action<br />class IndexController extends BaseController<br />{<br /><br />    public function init()<br />    {    	<br />    	//把下面的注释就没有问题,放开第一句的注释就会报错An error occurred    Application error<br />     	$user = new tb_user();  <br />        $res = $user->fetchAll()->toArray();   //查询数据表tb_user中的数据<br />        $this->view->res = $res;  //将获得的数据分配给View<br />        $this->render('index');<br />    }<br /><br />    public function indexAction()<br />    {<br />        // action body<br />    }<br />
Nach dem Login kopieren

------解决方案--------------------
parent::init();//调用父类的构造函数试试
$user = new tb_user();  

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!