热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何在PHP程序中操作MongoDB数据库

在安装配置好MongoDB后,我们开始用PHP来实现对数据库的基本操作。所谓基本操作,自然就是我们常说的增删改查(又称CRUD)了。一、PHP扩展配置PHP默认是不带mongodb扩展的,在http://www.php.net/manual/en/mongo.installation.php可以下载到各个版本下PHP的

在安装配置好MongoDB后,我们开始用PHP来实现对数据库的基本操作。所谓基本操作,自然就是我们常说的增删改查(又称CRUD)了。

一、PHP扩展配置

PHP默认是不带mongodb扩展的,在http://www.php.net/manual/en/mongo.installation.php可以下载到各个版本下PHP的mongodb扩展库。

我的PHP版本:5.3.1     VC6编译版

下载相对应的php扩展文件php_mongo.dll,拷入php扩展文件夹里/php/ext,修改php.ini文件,新增下列行:

extension=php_mongo.dll

二、PHP CRUD之旅

1、连接数据库

mongodb默认的初始用户名和密码均为admin。

建立文件mongotest.php,设置连接所需用户名和密码,建立数据库连接

$conn = new Mongo("mongodb://localhost:27017//admin:admin");
//默认用户和密码为admin
//选择数据库blog,如果没有,则创建
$db = $conn->blog;
//也可以写成:$db = $conn->selectDB('blog');
//制定结果集(表名:posts)
$collection = $db->posts;
//也可以写成:$collection = $db->selectCollection('posts');
?>
这样就成功创建了blog数据库和新的数据集posts(相当于SQL中的数据表概念)

2、新增数据(Create)

//新增一条blog posts
$post = array('title' => '第一篇博客', 'content' => '这是第一篇博客的内容.');
$collection->insert($post);
新增成功后,数据内容为:
array(3) { ["_id"]=> object(MongoId)#8 (1) { ["$id"]=> string(24) "4ee0799de1fecdbc16000001" } ["title"]=> string(15) "第一篇博客" ["content"]=> string(31) "这是第一篇博客的内容." }
3、查询数据(Read)
//查找
$cursor = $collection->find();
foreach($cursor as $key => $value){
        var_dump($value);
}
4、修改数据(Update)
$newdata = array('$set' => array("content"=>"这是更新过的第一篇博客的内容."));
$collection->update(array("title" => "第一篇博客"), $newdata);
更新成功后的数据内容为:
array(3) { ["_id"]=> object(MongoId)#7 (1) { ["$id"]=> string(24) "4ee0799de1fecdbc16000001" } ["content"]=> string(43) "这是更新过的第一篇博客的内容." ["title"]=> string(15) "第一篇博客" }
5、删除数据(Delete)
//删除
$collection->remove(array('title'=>'第一篇博客'));
6、其它常用操作
//关闭连接
$conn->close();
//删除一个数据库
$conn->dropDB("blog");
//列出所有可用数据库
$dbs = $conn->listDBs();

推荐阅读
author-avatar
潜水的飞机537
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有