标签:style blog class code c java
当我们在开发项目时..大家都会遇到一个问题就是:数据库的编码问题.当然我们不用Zend
Framework做为项目开发的框架时..我们可以很快,很容易搞定这个小问题..但是当我们要使用Zend
Framewok开发项目时..我们可能一时会不知道如何解决这个小问题..比如我就是这样的人..在开发这个博客前..真的不知道如何设数据库编码..?
现在我总结一下我的经验吧..当然也是在网络上找来的答案...
设定数据库编码问题很好解决.代码如下:
1 $dbAdapter=Zend_Db::factory($config->general->db->adapter,$config->general->db->toArray()); 2 $dbAdapter->query("SET NAMES utf8");
当我们搞定这个问题后..我们可能要给数据库设定数据表的前缀..这个时候..可能有的朋友会有不同的方式..之前我用一个笨方法也搞定了..但是现在参考网络上一篇文章,就有点启发,就把我原来的方法给去了,改进了一下.步骤如下所示:
第二:敲定confg.ini数据库配置文件我的配置文件如下:
[general] db.adapter=PDO_MYSQL db.host=localhost db.username=root db.password= db.dbname=unblog db.charset=utf8 db.prefix=unblog_
第三:打开网站的入口文件index.php,把里面读取config.ini配置文件的方法改成如下代码:
1 $config=new Zend_Config_Ini(‘./app/config/config.ini‘,null, true); 2 Zend_Registry::set(‘config‘,$config); 3 $dbAdapter=Zend_Db::factory($config->general->db->adapter, 4 $config->general->db->toArray()); 5 $dbAdapter->query("SET NAMES {$config->general->db->charset}"); 6 Zend_Db_Table::setDefaultAdapter($dbAdapter); 7 Zend_Registry::set(‘dbAdapter‘,$dbAdapter); 8 Zend_Registry::set(‘dbprefix‘,$config->general->db->prefix);
第四:在library/Custom/Model/增加一个Db.php 此文件代码如下.. (它是继承Zend_Db_Table这个类的.它的代码如下:)
1 class Custom_Model_Db extends Zend_Db_Table 2 { 3 public function __construct() 4 { 5 $dbprefix=Zend_Registry::get(‘dbprefix‘); 6 $this->_name=$dbprefix.$this->_name; 7 parent::__construct(); 8 } 9 }
最后:就是在我们的网站的每个Models里,数据库的操作类继承Custom_Model_Db,而不是继续原来的
Zend_Db_Table就可以搞定这一切
参与代码如下:
1 class Article extends Custom_Model_Db 2 { 3 protected $_name ="article"; 4 protected $_primary =‘id‘; 5 }
转载自其它地方,不敢居功,具体位置已经忘记,发出来,一来做一个记录,二来跟大家分享
zend framework配置,布布扣,bubuko.com
标签:style blog class code c java
原文地址:http://www.cnblogs.com/xueyuwyz/p/3731708.html