一、mongodb简介
mongodb (名称来自"humongous") 是一个可扩展的、高性能、开源、模式自由、面向文档的数据库,集文档数据库、键值对存储和关系型数据库的优点于一身。官方站点:http://www.mongodb.org/,mongodb特点:
•面向文档存储(类json数据模式简单而强大)
•动态查询
•全索引支持,扩展到内部对象和内嵌数组
•查询记录分析
•快速,就地更新
•高效存储二进制大对象 (比如照片和视频)
•复制和故障切换支持
•auto-sharding自动分片支持云级扩展性
•mapreduce 支持复杂聚合
•商业支持,培训和咨询
二、安装mongodb
安装mongodb非常的简单,仅需下载压缩包解压运行命令即可,下载地址:http://www.mongodb.org/downloads,本文为windows平台,mongodb运行命令:>bin/mongod。提示:首先要创建存储数据的文件夹,mongodb 默认存储数据目录为 /data/db/ (或者 c:\data\db),当然你也可以修改成不同目录,只需要指定 --dbpath 参数,eg:
>bin/mongod --dbpath=d:\mgdata\db
三、安装mongodb php扩展
根据自己的php版本下载php扩展:http://github.com/mongodb/mongo-php-driver/downloads,提示:
1、vc6适合apache、vc9适合iis;
2、thread safe适合php以模块运行方式、non-thread safe适合cgi运行方式。
修改php.ini,加入:extension=php_mongo.dll,重启web服务器。
四、php测试与mongodb的相关示例
1、连接mongo服务器
php code复制内容到剪贴板
//连接localhost:27017
$conn = new mongo();
//连接远程主机默认端口
$conn = new mongo('test.com');
//连接远程主机22011端口
$conn = new mongo('test.com:22011');
//mongodb有用户名密码
$conn = new mongo("mongodb://${username}:${password}@localhost")
//mongodb有用户名密码并指定数据库blog
$conn = new mongo("mongodb://${username}:${password}@localhost/blog");
//多个服务器
$conn = new mongo("mongodb://localhost:27017,localhost:27018");
?>
//连接localhost:27017
$conn = new mongo();
//连接远程主机默认端口
$conn = new mongo('test.com');
//连接远程主机22011端口
$conn = new mongo('test.com:22011');
//mongodb有用户名密码
$conn = new mongo("mongodb://${username}:${password}@localhost")
//mongodb有用户名密码并指定数据库blog
$conn = new mongo("mongodb://${username}:${password}@localhost/blog");
//多个服务器
$conn = new mongo("mongodb://localhost:27017,localhost:27018");
?>
2、指定数据库和数据集名(表名)
php code复制内容到剪贴板
//选择数据库blog
$db = $conn->blog;
//制定结果集(表名:users)
$collection = $db->users;
?>
//选择数据库blog
$db = $conn->blog;
//制定结果集(表名:users)
$collection = $db->users;
?>
3、crud
php code复制内容到剪贴板
//新增
$user = array('name' => 'caleng', 'email' => 'admin@admin.com');
$collection->insert($user);
//修改
$newdata = array('$set' => array("email" => "test@test.com"));
$collection->update(array("name" => "caleng"), $newdata);
//删除
$collection->remove(array('name'=>'caleng'), array("justone" => true));
//查找
$cursor = $collection->find();
var_dump($cursor);
//查找一条
$user = $collection->findone(array('name' => 'caleng'), array('email'));
var_dump($user);
?>
//新增
$user = array('name' => 'caleng', 'email' => 'admin@admin.com');
$collection->insert($user);
//修改
$newdata = array('$set' => array("email" => "test@test.com"));
$collection->update(array("name" => "caleng"), $newdata);
//删除
$collection->remove(array('name'=>'caleng'), array("justone" => true));
//查找
$cursor = $collection->find();
var_dump($cursor);
//查找一条
$user = $collection->findone(array('name' => 'caleng'), array('email'));
var_dump($user);
?>
4、关闭连接
php code复制内容到剪贴板
$conn->close();
?>
0
0
本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门AI工具
相关专题
本专题围绕漫蛙漫画(Manwa / Manwa2)官网网页版入口进行整理,涵盖漫蛙漫画官方主页访问方式、网页版在线阅读入口、台版正版漫画浏览说明及基础使用指引,帮助用户快速进入漫蛙漫画官网,稳定在线阅读正版漫画内容,避免误入非官方页面。
13
2026.02.03
本专题汇总了俄罗斯知名搜索引擎 Yandex 的官网入口、免登录访问地址、中文登录方法与网页版使用指南,帮助用户稳定访问 Yandex 官网,并提供一站式入口汇总。无论是登录入口还是在线搜索,用户都能快速获取最新稳定的访问链接与使用指南。
114
2026.02.03
本专题专注讲解 Java 中常用的设计模式,包括单例模式、工厂模式、观察者模式、策略模式等,并结合代码重构实践,帮助学习者掌握 如何运用设计模式优化代码结构,提高代码的可读性、可维护性和扩展性。通过具体示例,展示设计模式如何解决实际开发中的复杂问题。
3
2026.02.03
本专题系统讲解 C# 异步编程与并发控制,重点介绍 async 和 await 关键字、Task 类、线程池管理、并发数据结构、死锁与线程安全问题。通过多个实战项目,帮助学习者掌握 如何在 C# 中编写高效的异步代码,提升应用的并发性能与响应速度。
2
2026.02.03
本专题深入讲解 Python 在强化学习(Reinforcement Learning)中的应用,重点介绍 深度Q网络(DQN) 及其实现方法,涵盖 Q-learning 算法、深度学习与神经网络的结合、环境模拟与奖励机制设计、探索与利用的平衡等。通过构建一个简单的游戏AI,帮助学习者掌握 如何使用 Python 训练智能体在动态环境中作出决策。
3
2026.02.03
热门下载
相关下载
精品课程





