<?php
/**
* php 连接mongdb的类的封装
* @author 李秀然
*/

class mongdb{
private $host;//"mongodb://admin:12345678@127.0.0.1:27017";
private $data;
private $m_db;
//private $m;
function __construct($host,$data){
  $this->host=$host;
  $this->data=$data;
  $m = new Mongo($host);
  $this->m_db=$m->$data; //没有的话自动创建
}

//查询某个控制集的内容
function select($table,$arrary=array(),$sort=array(),$limit="",$fields=array()){
  $db=$this->table($table);
  // if (empty($arrary))
  $list=$db->find($arrary,$fields);
  if (!empty($sort)){
  $list->sort($sort);
  }
  if(!empty($limit)){
  $limit_arr=explode(",",$limit);
  if(count($limit_arr)>1){
  $list->skip($limit_arr[0]);//跳过100行
  $limit_row= $limit_arr[1];
}else{
  $limit_row= $limit_arr[0];
}
  $list->limit($limit_row);
}
  return $list;
}
function getone($table,$array=array(),$fields=array()){
  $db=$this->table($table);
  $one=$db->findOne($array,$fields);
  return $one;
}
// 选择表
function table($table){
  return $this->m_db->$table;
}
//添加数据
function insert($table,$arr){
  //$arr= array( "title" => "XKCD-".date('i:s'), "online" => true );
  $db=$this->table($table);
  return $db->insert($arr);

}
//更新数据
function update($table,$filter,$update_data,$option=array("multiple"=> true,"upsert" => true)){
  $db=$this->table($table);
  return $db->update($filter,$update_data,$option);
}
//删除数据
function del($table,$array){
  if (empty($array)){
    echo "请输入条件";
  exit;
  }
  $db=$this->table($table);
  return $db->remove($array);
}
//清空某个控制集的内容
function delall($table){
  $db=$this->table($table);
  return $db->remove();
}
function close(){
  $this->m_db->close;
}
}

?>

php 连接mongdb的类的更多相关文章

  1. Java基础-DBCP连接池(BasicDataSource类)详解

    Java基础-DBCP连接池(BasicDataSource类)详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 实际开发中“获得连接”或“释放资源”是非常消耗系统资源的两个过程 ...

  2. Druid连接池工具类

    package cn.zmh.PingCe; import com.alibaba.druid.pool.DruidDataSourceFactory; import javax.sql.DataSo ...

  3. Android OkHttp网络连接封装工具类

    package com.lidong.demo.utils; import android.os.Handler; import android.os.Looper; import com.googl ...

  4. 电脑网线/水晶头的连接方法(A类,B类)

    一般的橙白,橙,绿白,蓝,蓝白,绿,棕白,棕. 若是只有四根线的,则任选四根,做线时对应水晶头的1\2\3\6四个入口压制即可. 如果只有一根网线,但想两台机子同时上网,不增加外设,做网线时45水晶头 ...

  5. jdbc连接的工具类

    在不实用框架的情况下,有一个jdbc的工具类来进行数据库的连接就再好不过了,下面提供这个工具类DBUtil.java package org.jdbc.test; import java.io.Inp ...

  6. C3P0连接池工具类使用

    c3p0的基本连接配置文件 c3p0-config.xml <c3p0-config> <default-config> <property name="dri ...

  7. C3P0连接池工具类实现步骤及方法

    C3P0连接池的工具类 使用C3P0获得连接对象连接池有一个规范接口 javax.sal.DataSourse 接口定义了一个从连接池中获得连接的方法getConnection(); 步骤导入jar包 ...

  8. JDBC连接Oracle工具类

    import java.sql.*;import java.util.ResourceBundle; /** * jdbc工具类,负责: * 1. 加载/注册数据库驱动程序 * 2. 获取数据库连接 ...

  9. android和网络连接相关的类URL,URLConnection,HttpURLConnection,HttpClient

    这几个类都是用于和服务器端的连接,有些功能都能够实现,关系是: 一.URL URL标识着网络上的一个资源:该类包含一些URL自身的方法,如获取URL对应的主机名称,端口号,协议,查询字符串外,还有些方 ...

随机推荐

  1. VC6.0启动File-open和Project-add file to project崩溃的解决方法

    最近由于装了Office2010,VC6.0被整残了,file->open 和 Project->add file to project不能用,一用VC6.0就崩溃,查到是由于office ...

  2. [状态机]嵌入式设计模式:有限状态自动机的C语言实现

    转自:http://www.cnblogs.com/autosar/archive/2012/06/22/2558604.html 状态机模式是一种行为模式,在<设计模式>这本书中对其有详 ...

  3. github搭建个人博客----------绑定域名访问

    首先你得有一个Github账号,没有的话去github.com注册一个账号,然后到达仓库信息填写界面: 创建仓库,如下图:(仓库名要以自己的github名作为前缀,后面的夹 .github.io) 后 ...

  4. 6. GC 调优(工具篇) - GC參考手冊

    进行GC性能调优时, 须要明白了解, 当前的GC行为对系统和用户有多大的影响. 有多种监控GC的工具和方法, 本章将逐一介绍经常使用的工具. 您应该已经阅读了前面的章节: 垃圾收集简单介绍 - GC參 ...

  5. stm32独立看门狗

    转载:http://blog.sina.com.cn/s/blog_7f1dc53b01010mqa.html 实验现象: 开始LED1亮,LED2熄灭,若不隔时间按KEY1则发现LED2因独立看门狗 ...

  6. day day up

    复位与时钟控制器 RCC(Reset Clock Controller) 通用输入输出 GPIO(General Purpose Input/Output) 嵌套向量中断控制器 NVIC(Nested ...

  7. PHP不能不看的50个细节!

    1. 用单引号代替双引号来包含字符串,这样做会更快一些.因为PHP会在双引号包围的字符串中搜寻变量, 单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的”函数”(译注:PHP ...

  8. javascript控制服务器控件实例一

    最近多个页面需要加载一些下拉列表框,供用户选择,原来都是在服务器端进行加载应运用.最后由于 业务逻辑方面的考虑,需要将DropDownList的部分功能放到客户端实现.现在下拉列表的功能使用起来感 觉 ...

  9. 获取表单提交MVC错误信息

    if (!ModelState.IsValid)                {                    List<string> Keys = ModelState.Ke ...

  10. 格局中@null的代码实现方式

    布局中通常会用到@null.如RadioButton常用的技巧通过RadioGroup实现Tab,需要设置android:button="@null".如果要在代码中动态创建控件, ...