爱易网
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 浏览次数:20755 次
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#封装程序时 “下列文件可能具有不能自动确定的依赖项” 并 添加数据库
免责声明:
本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
相关资料
更多>
转载:纯JDBC系统的开发有感
Oracle 内存储器参数
存储过程施用小结
目录失效的一些原因【整理】
并行操作测试记要
【每天一摩斯】-RAC and Sequences (853652.1)
数据库概论笔记(第一天)
10G DATAGUARD增多REDO日志组、删除日志组、删除日志成员实验
oracle中两表其间值互相插入和表自身插入值
推荐阅读
更多>
C#下传byte类型图片到数据库
数据库——事宜——轻松走进数据库系列之十
ETL进程的数据测试
从浅到深理解索引的实现(1)
ORACLE联接|周、DECODE以及树查询
批改密码
ADO.NET数据库连接池的引见
java语言联接mysql数据库并利用XML解析工具DOM生成XML文件,然后利用DOM SAX对所生成XML文件里的详细信息进行解析
帮Derby数据库物理资料瘦身
ORACLE10G导入11G导出的资料
Oracle创设新用户、表空间、表、序列以及触发器
Sybase DBISQL的小奥妙
Oracle 数据库连接池有关问题
有关SQL Server 2005 CLR
数据库查询之(Ⅳ)子查询与归并查询
【每天一摩斯】-Troubleshooting: High CPU Utilization (164768.1) - 系列3
远程访问SSIS的配备
ORACLE中的function 、packages、package bodies、procedure的有什么区别跟相同的地方
oracle11g密码区分大小写有关问题
VirtualBox网络配备-搭建数据库服务器