zend framework 数据库操作(3)

zend framework 操作数据库:
  1. 在MyProject 项目配置如下 application.ini 文件
[production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
includePaths.library = APPLICATION_PATH "/../library"
bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"
appnamespace = "Application"
resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
resources.frontController.params.displayExceptions = 1

[mysql]
db.adapter=PDO_MYSQL
db.config.host=localhost  //数据库主机名   
db.config.username=root //用户名
db.config.password=123456  //密码
db.config.dbname=mydb //数据库名
    这里display_startup_errors = 1、display_errors = 1 表示显示服务器启动时错误和程序错误、警告等信息,设为 0 表示不显示错误信息
 2. 在 models 中新建一个如下的表模型 TestModes.php 
<?php
	class TestModel extends Zend_Db_Table{
		
		//默认表名为'test_model',与类名相对应,通过$_name进行重构表名
		protected $_primary='id';//主键(这里如果主键为id可以不写)
		protected $_name='test'; //表名
		
		//执行查询操作,查询 test 表中所有的数据
		public function excut_query(){
			//查询test表中的所有数据
			$res=$this->fetchAll()->toArray();
			return $res;
		}
	}
?>
  3.  在indexController.php 中完成数据库的初始化配置和调用相应的表模型执行 Action 操作
     代码如下:
     
<?php
require_once APPLICATION_PATH . '/models/TestModel.php';
class IndexController extends Zend_Controller_Action
{
	//初始化数据库函数
    public function init()
    {
        /* Initialize action controller here */
    	$url = "./../application/configs/application.ini";
    	//获取配置文件application.ini 中数据库配置信息
    	$dbconfig = new Zend_Config_Ini ($url, null,true);
    	//创建一个数据库工厂
    	$db = zend_Db::factory ($dbconfig->mysql->db->adapter,$dbconfig->mysql->db->config->toArray());
    	//设置字符编码
    	$db->query ('SET NAMES UTF8');
    	Zend_Db_Table::setDefaultAdapter ($db);
    }
	//调用表对象完成查询
    public function indexAction()
    {
        // action body
    	$testmodel=new TestModel();
    	$res=$testmodel->excut_query();
    	//将结果分配给该控制器对应的视图
    	$this->view->result=$res;
    	//调用views/scripts下的index.phtml显示结果
        $this->render("index");
    }
}

  4. 在 views 中的index.phtml 中显示结果视图,代码如下;
    
<h1>显示视图信息</h1>
<table width="400px" bgcolor="pink">
<tr><td>id</td><td>name</td><td>url</td><td>intro</td></tr>
<?php
	foreach ($this->result as $val)
	{
		echo "<tr bgcolor='white'><td>";
		echo $val['id']."</td>"."<td>".$val['name']."</td><td>";
		echo $val['url']."</td>"."<td>".$val['intro']."</td></tr>";
	}
?>
</table>
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值