爱易网
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 浏览次数:20706 次
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#封装程序时 “下列文件可能具有不能自动确定的依赖项” 并 添加数据库
免责声明:
本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
相关资料
更多>
Mongodb集群筹建的三种方式
Sql Server实用操作小技巧集合
SQL2000数据库常用话语
数据库设计中的定名规范
实业中不要用数据库的关键字做属性名
T-SQL 查询中运用的函数之系统函数
经过反射实现公用数据库操作方法
用java程序回读取纯真ip数据库
oracle更动用户名
推荐阅读
更多>
linux操作系统下树立mysql镜像数据库
用数组模拟一个数据库,进展增删查改的操作
DBA手册索引
2012-五-8
sql server平台用存储进程停止分页的两种方法
来自巴黎的华人软件架构师
Zabbix -> 客户端安装以及怎么添加数据库的动态监控视图
Oracle 中On与Where抉择 以及“(+)”位置不同的区别
JDBC中的预编译话语(转载)
第十三章——表跟索引分区(1)——使用Range Left进行表分区
Oracle数据导入导出imp/exp下令 [转]
Oracle兵器谱下古神器之-KFED
ORA-04030: 在尝试分配.字节(.)时进程内存不足的原因分析解决办法
SQL SERVER高速删除数据库表里面的记录,truncate与delete的对比
nverchar或float部类 转换成百分比
EXP导出速度奇慢有关问题处理
oracle index的五种使用模式
oracle pipelined返回值函数 针对数据集锦统计 返回结果集方法
mysql数据库同步跳过临时异常[转]
数据库连接过多的异常,可能的原因分析及解决方法