设为首页
收藏本站
用户名
Email
自动登录
找回密码
密码
登录
立即注册
只需一步,快速开始
快捷导航
登录
注册
论坛首页
BBS
建站模版
微站设计
虚拟主机
企业邮箱
博客日志
Blog
搜索
搜索
搜索
热搜
长春
优惠
活动
做网站
本版
帖子
用户
本版
帖子
用户
请
登录
后使用快捷导航
没有帐号?
立即注册
道具
勋章
任务
留言板
设置
我的收藏
退出
时时商务社区
»
论坛首页
›
建站资源
›
建站技术
›
php实现的mongodb操作类
返回列表
查看:
379
|
回复:
0
php实现的mongodb操作类
[复制链接]
网络通达
当前离线
积分
7881
2647
主题
2647
帖子
7881
积分
论坛元老
论坛元老, 积分 7881, 距离下一级还需 9992118 积分
论坛元老, 积分 7881, 距离下一级还需 9992118 积分
积分
7881
发消息
电梯直达
楼主
发表于 2018-2-14 05:45:43
|
只看该作者
|
倒序浏览
|
阅读模式
mongo_db.php
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 "出错了:$errorInfo";
die();
}
}
以上所述就是本文的全部内容了,希望大家能够喜欢。
您可能感兴趣的文章:
php对mongodb的扩展(初识如故)
PHP对MongoDB[NoSQL]数据库的操作
解析PHP中常见的mongodb查询操作
PHP实现的MongoDB数据库操作类分享
高效mongodb的php分页类(不使用skip)
PHP中MongoDB数据库的连接、添加、修改、查询、删除等操作实例
php实现的mongodb操作类实例
php操作MongoDB类实例
PHP7之Mongodb API使用详解
php mongodb操作类 带几个简单的例子
php封装的mongodb操作类代码
php实现的mongoDB单例模式操作类
分享到:
QQ好友和群
QQ空间
腾讯微博
腾讯朋友
收藏
0
回复
使用道具
举报
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
用户反馈
客户端