数码资讯
php实现的MongoDB数据库操作类共享
复制代码代码如下所示: 类hmongodb { 私人美元 / /蒙古MongoDB的连接; 私人curr_db_name美元; 私人curr_table_name美元; 私人$错误; 公共函数getInstance(mongo_server美元美元,旗=阵列()) { 静态mongodb_arr美元
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
复制代码代码如下所示:
类hmongodb {
私人美元 / /蒙古MongoDB的连接;
私人curr_db_name美元;
私人curr_table_name美元;
私人$错误;
公共函数getInstance(mongo_server美元美元,旗=阵列())
{
静态mongodb_arr美元;
如果(空($旗{ 'tag ' }))
{
{ } =美元'tag旗'default;}
如果(isset($旗{力量' }){ } =力量旗帜美元= true)
{
蒙戈=新hmongodb美元(美元mongo_server);
如果(空(美元mongodb_arr { { } }的旗帜'tag美元))
{
mongodb_arr美元{ $旗{ } } = $蒙古'tag;
}
返回的芒果;
}
else if(isset($ mongodb_arr { { } }的旗帜'tag美元(美元)is_resource mongodb_arr { { } }的旗帜'tag美元))
{
返回的mongodb_arr { { } }的旗帜'tag美元;
}
其他的
{
蒙戈=新hmongodb美元(美元mongo_server);
mongodb_arr美元{ $旗{ } } = $蒙古'tag;
返回的芒果;
}
}
*构造函数
*支持输入多个mongo_server(1。问题被连接到其他服务器2。当问题出问题时自动向不同服务器分发查询)
*
*参数:
* $ mongo_server:数组和字符串数组(127.0.0.1:1111
*如果$连接:初始化对象的Mongo如果连接,默认的连接
* $ auto_balance:自动默认情况下的负载均衡
*
*返回值:
*成功:Mongo对象
*失败:假
* /
私有函数__construct(mongo_server美元,美元=真正的连接,auto_balance美元= true)
{
如果(is_array($ mongo_server))
{
mongo_server_num美元=计数($ mongo_server);
如果($ mongo_server_num > 1美元auto_balance)
{
prior_server_num美元=兰特(1美元mongo_server_num);
rand_keys美元= array_rand(mongo_server美元,美元mongo_server_num);
mongo_server_str美元美元美元mongo_server prior_server_num-1 } = {;
foreach(rand_keys美元美元的关键)
{
如果(键)!prior_server_num =美元1)
{
mongo_server_str美元=美元美元的关键mongo_server { };
}
}
}
其他的
{
mongo_server_str美元=崩溃(',',mongo_server美元);
} }。
其他的
{
mongo_server_str = mongo_server美元美元;
}
{试
美元->芒果=新Mongo($ mongo_server,阵列('connect= > $连接));
}
抓住(mongoconnectionexception $ E)
{
美元->错误= $ E -> GetMessage();
返回false;
}
}
*连接MongoDB服务器
*
*参数:无
*
*返回值:
*成功:真实
*失败:假
* /
公共功能连接()
{
{试
美元-> Mongo ->连接();
返回true;
}
抓住(mongoconnectionexception $ E)
{
美元->错误= $ E -> GetMessage();
返回false;
}
}
*选择分贝
*
*参数:在美元
*
*返回值:无
* /
公共功能selectdb($ dbname)
{
美元-> curr_db_name = dbname美元;
}
*创建索引:如果索引已经存在,则返回。
*
*参数:
* $ table_name:表名
*索引:索引数组()1 -在id字段中建立一个升序索引
* $ index_param:其他条件是否唯一索引,等等。
*
*返回值:
*成功:真实
*失败:假
* /
公共功能ensureindex(table_name美元,美元指数,美元index_param =阵列())
{
北京美元美元-> curr_db_name;
index_param美元{安全} = 1;
{试
美元-> -> ->美元-在table_name -> ensureindex美元(美元指数,美元index_param);
返回true;
}
抓住(mongocursorexception $ E)
{
美元->错误= $ E -> GetMessage();
返回false;
}
}
*插入记录
*
*参数:
* $ table_name:表名
*记录:记录
*
*返回值:
*成功:真实
*失败:假
* /
公共函数插入(table_name美元,美元的记录)
{
北京美元美元-> curr_db_name;
{试
美元-> -> ->蒙古美元美元在table_name ->插入($记录阵列(安全= >真));
返回true;
}
抓住(mongocursorexception $ E)
{
美元->错误= $ E -> GetMessage();
返回false;
}
}
*查询表的记录数
*
*参数:
* $ table_name:表名
*
*返回值:表的记录数
* /
公共函数($ table_name)
{
北京美元美元-> curr_db_name;
返回这个-> -> ->蒙古美元美元在table_name ->数();
}
*更新记录
*
*参数:
* $ table_name:表名
*条件:更新条件
* $新:新的数据记录
* $选项:更新选择更新插入 /多
*
*返回值:
*成功:真实
*失败:假
* /
更新函数(table_name美元,美元美元美元的条件下,新的数据,选择=阵列())
{
北京美元美元-> curr_db_name;
{ } =选择安全的美元1;
如果(!isset($选项{多}))
{
选择多} {美元= 0;}
{试
美元-> -> ->蒙古美元美元在table_name ->更新(合条件,新的美元,美元的期权);
返回true;
}
抓住(mongocursorexception $ E)
{
美元->错误= $ E -> GetMessage();
返回false;
}
}
*删除记录
*
*参数:
* $ table_name:表名
*条件:删除条件
* $选项:删除选择的一个
*
*返回值:
*成功:真实
*失败:假
* /
公共函数删除(table_name美元美元美元,条件,选择=阵列())
{
北京美元美元-> curr_db_name;
{ } =选择安全的美元1;
{试
美元-> -> ->蒙古美元美元在table_name ->删除(合条件,选择美元);
返回true;
}
抓住(mongocursorexception $ E)
{
美元->错误= $ E -> GetMessage();
返回false;
} }
*查找记录
*
*参数:
* $ table_name:表名
* $ query_condition:字段查询条件
* $ result_condition:查询结果的约束条件限制或排序,等等。
* $字段:获取字段
*
*返回值:
*成功:创纪录的一套
*失败:假
* /
公共函数find(table_name美元,query_condition美元,美元,美元result_condition =阵列()()=阵列等)
{
北京美元美元-> curr_db_name;
$光标=美元-> -> ->蒙古美元美元在table_name ->找到(query_condition美元,美元的领域);
如果(!空(美元result_condition {开始' }))
{
$光标->跳(合result_condition {开始' });
}
如果(!空(美元result_condition { 'limit ' }))
{
$光标->极限($ result_condition { 'limit});
}
如果(!空(美元result_condition {大概' }))
{
$光标->排序($ result_condition {大概的});
}
结果=数组();
{试
而($光标-> hasNext())
{
结果{ } =美元美元光标-> GetNext();
}
}
抓住(mongoconnectionexception $ E)
{
美元->错误= $ E -> GetMessage();
返回false;
}
抓住(mongocursortimeoutexception $ E)
{
美元->错误= $ E -> GetMessage();
返回false;
}
返回$结果;
}
*查找记录
*
*参数:
* $ table_name:表名
*条件:查找条件
* $字段:获取字段
*
*返回值:
*成功:记录
*失败:假
* /
寻找一个公共函数(table_name美元美元美元,条件字段=阵列())
{
北京美元美元-> curr_db_name;
返回这个-> -> ->蒙古美元美元在table_name ->找到(合条件,$场);
}
*获取当前错误信息
*
*参数:无
*
*返回值:当前错误信息
* /
公共功能geterror()
{
返回$此错误;
}
/ MongoDB **的例子:
* $蒙戈=新hmongodb(127.0.0.1:11223 );
* $蒙戈- > selectdb(test_db );
*创建索引
* $蒙戈- > ensureindex(test_table
*捕捉表的记录
* $ Mongo ->计数(test_table );
*插入记录
* $ Mongo ->插入(test_table
*更新记录
* $蒙戈- >更新(test_table
*更新记录-存在更新,当没有添加时-等于集合
* $蒙戈- >更新(test_table
*查找记录
* $ Mongo ->找到(阵列(C
*查找记录
* $ Mongo ->找到(蒙美元->找到(TTT
*删除记录
* $ Mongo ->删除(array(TTT
*只删除一条记录
* $ Mongo ->删除(array(TTT
*获得Mongo手术的错误信息
* $蒙戈- > geterror();
* /
}
类hmongodb {
私人美元 / /蒙古MongoDB的连接;
私人curr_db_name美元;
私人curr_table_name美元;
私人$错误;
公共函数getInstance(mongo_server美元美元,旗=阵列())
{
静态mongodb_arr美元;
如果(空($旗{ 'tag ' }))
{
{ } =美元'tag旗'default;}
如果(isset($旗{力量' }){ } =力量旗帜美元= true)
{
蒙戈=新hmongodb美元(美元mongo_server);
如果(空(美元mongodb_arr { { } }的旗帜'tag美元))
{
mongodb_arr美元{ $旗{ } } = $蒙古'tag;
}
返回的芒果;
}
else if(isset($ mongodb_arr { { } }的旗帜'tag美元(美元)is_resource mongodb_arr { { } }的旗帜'tag美元))
{
返回的mongodb_arr { { } }的旗帜'tag美元;
}
其他的
{
蒙戈=新hmongodb美元(美元mongo_server);
mongodb_arr美元{ $旗{ } } = $蒙古'tag;
返回的芒果;
}
}
*构造函数
*支持输入多个mongo_server(1。问题被连接到其他服务器2。当问题出问题时自动向不同服务器分发查询)
*
*参数:
* $ mongo_server:数组和字符串数组(127.0.0.1:1111
*如果$连接:初始化对象的Mongo如果连接,默认的连接
* $ auto_balance:自动默认情况下的负载均衡
*
*返回值:
*成功:Mongo对象
*失败:假
* /
私有函数__construct(mongo_server美元,美元=真正的连接,auto_balance美元= true)
{
如果(is_array($ mongo_server))
{
mongo_server_num美元=计数($ mongo_server);
如果($ mongo_server_num > 1美元auto_balance)
{
prior_server_num美元=兰特(1美元mongo_server_num);
rand_keys美元= array_rand(mongo_server美元,美元mongo_server_num);
mongo_server_str美元美元美元mongo_server prior_server_num-1 } = {;
foreach(rand_keys美元美元的关键)
{
如果(键)!prior_server_num =美元1)
{
mongo_server_str美元=美元美元的关键mongo_server { };
}
}
}
其他的
{
mongo_server_str美元=崩溃(',',mongo_server美元);
} }。
其他的
{
mongo_server_str = mongo_server美元美元;
}
{试
美元->芒果=新Mongo($ mongo_server,阵列('connect= > $连接));
}
抓住(mongoconnectionexception $ E)
{
美元->错误= $ E -> GetMessage();
返回false;
}
}
*连接MongoDB服务器
*
*参数:无
*
*返回值:
*成功:真实
*失败:假
* /
公共功能连接()
{
{试
美元-> Mongo ->连接();
返回true;
}
抓住(mongoconnectionexception $ E)
{
美元->错误= $ E -> GetMessage();
返回false;
}
}
*选择分贝
*
*参数:在美元
*
*返回值:无
* /
公共功能selectdb($ dbname)
{
美元-> curr_db_name = dbname美元;
}
*创建索引:如果索引已经存在,则返回。
*
*参数:
* $ table_name:表名
*索引:索引数组()1 -在id字段中建立一个升序索引
* $ index_param:其他条件是否唯一索引,等等。
*
*返回值:
*成功:真实
*失败:假
* /
公共功能ensureindex(table_name美元,美元指数,美元index_param =阵列())
{
北京美元美元-> curr_db_name;
index_param美元{安全} = 1;
{试
美元-> -> ->美元-在table_name -> ensureindex美元(美元指数,美元index_param);
返回true;
}
抓住(mongocursorexception $ E)
{
美元->错误= $ E -> GetMessage();
返回false;
}
}
*插入记录
*
*参数:
* $ table_name:表名
*记录:记录
*
*返回值:
*成功:真实
*失败:假
* /
公共函数插入(table_name美元,美元的记录)
{
北京美元美元-> curr_db_name;
{试
美元-> -> ->蒙古美元美元在table_name ->插入($记录阵列(安全= >真));
返回true;
}
抓住(mongocursorexception $ E)
{
美元->错误= $ E -> GetMessage();
返回false;
}
}
*查询表的记录数
*
*参数:
* $ table_name:表名
*
*返回值:表的记录数
* /
公共函数($ table_name)
{
北京美元美元-> curr_db_name;
返回这个-> -> ->蒙古美元美元在table_name ->数();
}
*更新记录
*
*参数:
* $ table_name:表名
*条件:更新条件
* $新:新的数据记录
* $选项:更新选择更新插入 /多
*
*返回值:
*成功:真实
*失败:假
* /
更新函数(table_name美元,美元美元美元的条件下,新的数据,选择=阵列())
{
北京美元美元-> curr_db_name;
{ } =选择安全的美元1;
如果(!isset($选项{多}))
{
选择多} {美元= 0;}
{试
美元-> -> ->蒙古美元美元在table_name ->更新(合条件,新的美元,美元的期权);
返回true;
}
抓住(mongocursorexception $ E)
{
美元->错误= $ E -> GetMessage();
返回false;
}
}
*删除记录
*
*参数:
* $ table_name:表名
*条件:删除条件
* $选项:删除选择的一个
*
*返回值:
*成功:真实
*失败:假
* /
公共函数删除(table_name美元美元美元,条件,选择=阵列())
{
北京美元美元-> curr_db_name;
{ } =选择安全的美元1;
{试
美元-> -> ->蒙古美元美元在table_name ->删除(合条件,选择美元);
返回true;
}
抓住(mongocursorexception $ E)
{
美元->错误= $ E -> GetMessage();
返回false;
} }
*查找记录
*
*参数:
* $ table_name:表名
* $ query_condition:字段查询条件
* $ result_condition:查询结果的约束条件限制或排序,等等。
* $字段:获取字段
*
*返回值:
*成功:创纪录的一套
*失败:假
* /
公共函数find(table_name美元,query_condition美元,美元,美元result_condition =阵列()()=阵列等)
{
北京美元美元-> curr_db_name;
$光标=美元-> -> ->蒙古美元美元在table_name ->找到(query_condition美元,美元的领域);
如果(!空(美元result_condition {开始' }))
{
$光标->跳(合result_condition {开始' });
}
如果(!空(美元result_condition { 'limit ' }))
{
$光标->极限($ result_condition { 'limit});
}
如果(!空(美元result_condition {大概' }))
{
$光标->排序($ result_condition {大概的});
}
结果=数组();
{试
而($光标-> hasNext())
{
结果{ } =美元美元光标-> GetNext();
}
}
抓住(mongoconnectionexception $ E)
{
美元->错误= $ E -> GetMessage();
返回false;
}
抓住(mongocursortimeoutexception $ E)
{
美元->错误= $ E -> GetMessage();
返回false;
}
返回$结果;
}
*查找记录
*
*参数:
* $ table_name:表名
*条件:查找条件
* $字段:获取字段
*
*返回值:
*成功:记录
*失败:假
* /
寻找一个公共函数(table_name美元美元美元,条件字段=阵列())
{
北京美元美元-> curr_db_name;
返回这个-> -> ->蒙古美元美元在table_name ->找到(合条件,$场);
}
*获取当前错误信息
*
*参数:无
*
*返回值:当前错误信息
* /
公共功能geterror()
{
返回$此错误;
}
/ MongoDB **的例子:
* $蒙戈=新hmongodb(127.0.0.1:11223 );
* $蒙戈- > selectdb(test_db );
*创建索引
* $蒙戈- > ensureindex(test_table
*捕捉表的记录
* $ Mongo ->计数(test_table );
*插入记录
* $ Mongo ->插入(test_table
*更新记录
* $蒙戈- >更新(test_table
*更新记录-存在更新,当没有添加时-等于集合
* $蒙戈- >更新(test_table
*查找记录
* $ Mongo ->找到(阵列(C
*查找记录
* $ Mongo ->找到(蒙美元->找到(TTT
*删除记录
* $ Mongo ->删除(array(TTT
*只删除一条记录
* $ Mongo ->删除(array(TTT
*获得Mongo手术的错误信息
* $蒙戈- > geterror();
* /
}
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。