您的位置:首页 > 编程语言 > PHP开发

zend framework 数据库操作(3)

2014-01-04 18:02 190 查看
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>

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  zend framework