爱易网
IT新闻
IT新闻
爱易资讯
网站搭建
云虚拟主机教程
云服务器教程
Apache教程
IIS教程
Nginx教程
网站策划
站长文章
推广教程
淘宝客教程
网页设计
HTML教程
XHTML教程
CSS教程
HTML5教程
CSS3教程
JavaSript基础
JQuery教程
Node.js教程
前端技术
Ajax教程
Js特效
Xml教程
平面设计
页面UI设计
photoshop教程
程序开发
AI人工智能
Asp教程
Php教程
Asp.Net教程
Net Core教程
C#教程
Java教程
Jsp教程
开发技术
微信小程序教程
Uniapp开发教程
微信公众号开发
Andriod教程
IOS教程
DOS教程
Python教程
Docker教程
Windows Container教程
数据库
MSSQL教程
MySQL教程
Redis教程
Access教程
Oracle教程
数据库教程
操作系统
Linux教程
Windows教程
MAC教程
Cisco教程
交换机教程
防火墙教程
搜索
爱易网页
数据库教程
PHP Mongodb种
PHP Mongodb种
日期:2014-05-16 浏览次数:20693 次
PHP Mongodb类
/********************************************************************************* * InitPHP 2.0 国产PHP开发框架 Dao-Nosql-Mongo *------------------------------------------- * 版权所有: CopyRight By initphp.com * 您可以自由使用该源码,但是在使用过程中,请保留作者信息。尊重他人劳动成果就是尊重自己 *------------------------------------------- * $Author:zhuli * $Dtime:2011-10-09 ***********************************************************************************/ class mongoInit { private $mongo; //mongo对象 private $db; //db mongodb对象数据库 private $collection; //集合,相当于数据表 /** * 初始化Mongo * $config = array( * 'server' => ‘127.0.0.1' 服务器地址 * ‘port’ => '27017' 端口地址 * ‘option’ => array('connect' => true) 参数 * 'db_name'=> 'test' 数据库名称 * ‘username’=> 'zhuli' 数据库用户名 * ‘password’=> '123456' 数据库密码 * ) * Enter description here ... * @param unknown_type $config */ public function init($config = array()) { if ($config['server'] == '') $config['server'] = '127.0.0.1'; if ($config['port'] == '') $config['port'] = '27017'; if (!$config['option']) $config['option'] = array('connect' => true); $server = 'mongodb://' . $config['server'] . ':' . $config['port']; $this->mongo = new Mongo($server, $options); if ($config['db_name'] == '') $config['db_name'] = 'test'; $this->db = $this->mongo->selectDB($config['db_name']); if ($config['username'] != '' && $config['password'] != '') $this->db->authenticate($config['username'], $config['password']); } /** * 选择一个集合,相当于选择一个数据表 * @param string $collection 集合名称 */ public function selectCollection($collection) { return $this->collection = $this->db->selectCollection($collection); } /** * 新增数据 * @param array $data 需要新增的数据 例如:array('title' => '1000', 'username' => 'xcxx') * @param array $option 参数 */ public function insert($data, $option = array()) { return $this->collection->insert($data, $option); } /** * 批量新增数据 * @param array $data 需要新增的数据 例如:array(0=>array('title' => '1000', 'username' => 'xcxx')) * @param array $option 参数 */ public function batchInsert($data, $option = array()) { return $this->collection->batchInsert($data, $option); } /** * 保存数据,如果已经存在在库中,则更新,不存在,则新增 * @param array $data 需要新增的数据 例如:array(0=>array('title' => '1000', 'username' => 'xcxx')) * @param array $option 参数 */ public function save($data, $option = array()) { return $this->collection->save($data, $option); } /** * 根据条件移除 * @param array $query 条件 例如:array(('title' => '1000')) * @param array $option 参数 */ public function remove($query, $option = array()) { return $this->collection->remove($query, $option); } /** * 根据条件更新数据 * @param array $query 条件 例如:array(('title' => '1000')) * @param array $data 需要更新的数据 例如:array(0=>array('title' => '1000', 'username' => 'xcxx')) * @param array $option 参数 */ public function update($query, $data, $option = array()) { return $this->collection->update($query, $data, $option); } /** * 根据条件查找一条数据 * @param array $query 条件 例如:array(('title' => '1000')) * @param array $fields 参数 */ public function findOne($query, $fields = array()) { return $this->collection->findOne($query, $fields); } /** * 根据条件查找多条数据 * @param array $query 查询条件 * @param array $sort 排序条件 array('age' => -1, 'username' => 1) * @param int $limit 页面 * @param int $limit 查询到的数据条数 * @param array $fields返回的字段 */ public function find($query, $sort = array(), $skip = 0, $limit = 0, $fields = array()) { $cursor = $this->collection->find($query, $fields); if ($sort) $cursor->sort($sort); if ($skip) $cursor->skip($skip); if ($limit) $cursor->limit($limit); return iterator_to_array($cursor); } /** * 数据统计 */ public function count() { return $this->collection->c
上一篇: CCNP_route札记6 关于OSPF中的hello和DBD顺序
下一篇: c#封装程序时 “下列文件可能具有不能自动确定的依赖项” 并 添加数据库
免责声明:
本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
相关资料
更多>
MariaDb数据库管理系统学习(2)使用HeidiSQL数据库图形化界面管理工具
数据库中流标的概念
oracle中剔除表时,提示ORA-14452
【转】齐集索引和非聚集索引(整理)
t-sql建暂时表,处置字符串
Spring运用JdbcTemplate操作数据库例子
C#NET 连接数据库
myEclipse控制台有hql输出,数据库里没记录
目录学习
推荐阅读
更多>
绝对难点,tomcat警告 spring jdbcTemplate查询
oracle更动主外键关系类型并且不破坏原来数据
Oracle10g经过DBLink访问MySQL示例
解决SQL Server 2000之日志传送功能
ORACLE运用中罕见的傻瓜效果1000问 (一)
微软正版WinXP中运用盗版软件 还有黑客数字签名
Oralce 10G学习日记
自各儿开发的“万能数据库查询分析器”终于有了较大的成果
Oracle施用日志挖掘技术找回误删数据
什么时候应用存储过程比较适合
数据库连接失误:java.lang.ClassNotFoundException: org.apache.commons.dbcp
[Cocoa]深入显出Cocoa之 sqlite 数据库
Linux 联接Oracle数据库执行SQL
经过ADO.NET操作数据库
奇怪的使用dblink创建物化视图的有关问题
在Java中利用动态署理实现数据库连接与事务的自动管理【转】
INERT DELEYED、INSERT IGNORE replace into跟insert区别
DATAGUARD在做SWITCHOVER切换时遇到有关问题总结
Oracle创造索引的准则
oracle10g 服务 XP上手动管理