加入收藏 | 设为首页 | 会员中心 | 我要投稿 商洛站长网 (https://www.0914zz.com/)- AI应用、CDN、边缘计算、云计算、物联网!
当前位置: 首页 > 编程开发 > PHP > 正文

Zend Framework数据库操作技巧总结

发布时间:2020-12-30 21:43:26 所属栏目:PHP 来源:互联网
导读:这篇文章主要介绍了Zend Framework数据库操作技巧,结合实例形式总结分析了Zend Framework针对数据库操作的常见函数、常用操作及相关注意事项,需要的朋友可以参考下

本文实例总结了Zend Framework数据库操作。分享给大家供大家参考,具体如下:

Zend_Db数据库知识

例子:

fetchAll("is_jian=1","id DESC",2)->toArray(); //根据is_jian=1,按id倒序排列取前2条记录当第一个参数为null时,则直接按id倒序排列ASC为正序。

view->get2Video =$video->get2Video();//取到2条首页推荐的数据

get2Video as $video): ?>

添加引号防止数据库攻击

quote用法

quote('St John"s Wort'); // $value 现在变成了 '"St John"s Wort"' (注意两边的引号) // 为数组加引号 $value = $db->quote(array('a','b','c')); // $value 现在变成了 '"a","b","c"' (","分隔的字符串)

quoteInto用法

quoteInto('id = ?',1); // $where 现在为 'id = "1"' (注意两边的引号) // 在where语句中为数组加上引号 $where = $db->quoteInto('id IN(?)',array(1,2,3)); // $where 现在为 'id IN("1","2","3")' (一个逗号分隔的字符串)

(1)数据查询总结

getAdapter(); $sql = $db->quoteInto('SELECT * FROM `m_video` WHERE `is_guo` =?','1'); $result = $db->query($sql); // 使用PDOStatement对象$result将所有结果数据放到一个数组中 $videoArray = $result->fetchAll();

fetchAll($where = null,$order = null,$count = null,$offset = null)

取回结果集中所有字段的值,作为连续数组返回,如果参数不设置就写成null

可以取回结果集的指定条数

fetchAll("is_jian=1 and is_guo=1",2)->toArray();

fetchAssoc($sql,$bind = array())

取回结果集中所有字段的值,作为关联数组返回,第一个字段作为码

getAdapter(); $videoArray=$db->fetchAssoc("SELECT * FROM m_video WHERE `is_jian` = :title",array('title' => '1'));

fetchCol($sql,$bind = array())

取回所有结果行的第一个字段名

getAdapter(); $videoArray=$db->fetchCol("SELECT name FROM m_video WHERE `is_jian` = :title",array('title' => '1'));

fetchOne($sql,$bind = array())

只取回第一个字段值

getAdapter(); echo $videoArray=$db->fetchOne("SELECT count(*) FROM m_video WHERE `is_jian` = :title",array('title' => '1'));

fetchPairs($sql,$bind = array())

取回一个相关数组,第一个字段值为码(id),第二个字段为值(name)

返回:Array( [1] => 十二生肖奇缘 [2] => 桃花运),1,2:为id字段。

getAdapter(); $videoArray=$db->fetchPairs("SELECT id,name FROM m_video WHERE is_jian = :title",array('title' => '1'));

fetchRow($where = null,$order = null)

只取回结果集的第一行

fetchRow("is_jian=1 and is_guo=1",'id DESC')->toArray();

getAdapter(); $result = $db->query('SELECT * FROM `m_video`'); //$result = $db->query('SELECT * FROM `m_video` WHERE `name` = ? AND id = ?',array('十二生肖奇缘','1')); //$result->setFetchMode(Zend_Db::FETCH_OBJ);//FETCH_OBJ为默认值,FETCH_NUM,FETCH_BOTH //while ($row = $result->fetch()) { // echo $row['name']; /

(编辑:商洛站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读