首页 > 数据库 > MongoDB > 正文

php实现的mongodb操作类

2020-03-22 19:08:35
字体:
来源:转载
供稿:网友
html' target='_blank'>public function __construct($host = NULL, $port = NULL, $dbname = NULL, $table = NULL) if (NULL === $dbname) { $this- throwError('集合不能为空!'); //判断是否传递了host和port if (NULL !== $host) { $this- host = $host; if (NULL !== $port) { $this- port = $port; $this- table = $table; $this- mongo = new MongoClient($this- host . ':' . $this- port); if ($this- getVersion() = '0.9.0') { $this- dbname = $this- mongo- selectDB($dbname); $this- db = $this- dbname- selectCollection($table); } else { $this- db = $this- mongo- $dbname- $table; public function getVersion() return MongoClient::VERSION; * 单例模式 * @return Mongo|null //public static function getInstance($host=null, $port=null, $dbname=null, $table=null){ // if(!(self::$instanceof instanceof self)){ // self::$instanceof = new self($host, $port, $dbname, $table); // } // return self::$instanceof; * 插入一条数据 * @param array $doc public function insert($doc = array()) if (empty($doc)) { $this- throwError('插入的数据不能为空!'); //保存数据信息 try { if (!$this- db- insert($doc)) { throw new MongoException('插入数据失败'); } catch (MongoException $e) { $this- throwError($e- getMessage()); * 插入多条数据信息 * @param array $doc public function insertMulti($doc = array()) if (empty($doc)) { $this- throwError('插入的数据不能为空!'); //插入数据信息 foreach ($doc as $key = $val) { //判断$val是不是数组 if (is_array($val)) { $this- insert($val); * 查找一条记录 * @return array|null public function findOne($where = NULL) if (NULL === $where) { try { if ($result = $this- db- findOne()) { return $result; } else { throw new MongoException('查找数据失败'); } catch (MongoException $e) { $this- throwError($e- getMessage()); } else { try { if ($result = $this- db- findOne($where)) { return $result; } else { throw new MongoException('查找数据失败'); } catch (MongoException $e) { $this- throwError($e- getMessage()); * todo 带条件的随后做 * 查找所有的文档 * @return MongoCursor public function find($where = NULL) if (NULL === $where) { try { if ($result = $this- db- find()) { } else { throw new MongoException('查找数据失败'); } catch (MongoException $e) { $this- throwError($e- getMessage()); } else { try { if ($result = $this- db- find($where)) { } else { throw new MongoException('查找数据失败'); } catch (MongoException $e) { $this- throwError($e- getMessage()); $arr = array(); foreach ($result as $id = $val) { $arr[] = $val; return $arr; * 获取记录条数 * @return int public function getCount() try { if ($count = $this- db- count()) { return $count; } else { throw new MongoException('查找总数失败'); } catch (MongoException $e) { $this- throwError($e- getMessage()); * 获取所有的数据库 * @return array public function getDbs() return $this- mongo- listDBs(); * 删除数据库 * @param null $dbname * @return mixed public function dropDb($dbname = NULL) if (NULL !== $dbname) { $retult = $this- mongo- dropDB($dbname); if ($retult['ok']) { return TRUE; } else { return FALSE; $this- throwError('请输入要删除的数据库名称'); * 强制关闭数据库的链接 public function closeDb() $this- mongo- close(TRUE); * 输出错误信息 * @param $errorInfo 错误内容 public function throwError($errorInfo='') echo " h3 出错了:$errorInfo /h3 die();以上所述就是本文的全部内容了,希望大家能够喜欢。PHP教程

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表