mongoDB Windows 下的安装及与 PHP 连接测试(二)
分类: PHP-mySQL-Apache 2010-07-21 18:41 1259人阅读 评论(0) 收藏 举报
二、在 PHP 里用代码进行测试:
与 MySQL 一样,mongoDB 是以 PHP 扩展库 .dll 的形式与 PHP 进行集成的。
到以下网址下载 Windows 下相应 PHP 版本的 dll 文件:
http://cn.php.net/manual/en/mongo.installation.php#mongo.installation.windows
根据自己的 PHP 的版本、是否线程安全(可在 phpinfo 里查看)等来选择相应版本,如:
PHP 5.2 VC6 Thread-Safe Mongo extension:
http://downloads.mongodb.org/mongo-latest-php5.2vc6ts.zip
下载,加压,得到 php_mongo.dll 文件。拷贝到 PHP 安装目录下的 ext 目录下在 php.ini 文件里加:
extension = php_mongo.dll;
重启 Web 服务器(apache 或 nginx)。应该能在 phpinfo 里看到 mingoDB 的信息,否则就是安装有问题。很可能是下载的 mingoDB 扩展不对。
测试代码:
<?php
ini_set('error_reporting', E_ALL | E_STRICT); //打开错误显示开关
//ini_set('error_reporting', 0); //关闭错误输出
$dburl = 'localhost';
$port= '27017';
$dbname = 'testdb';
$username = '';
$password = '';
$connection = new Mongo(); // connects to localhost:27017
//$connection = new Mongo( "$dburl:$port" ); // connect to a remote host (default port)
$db = $connection->selectDB($dbname);
$collection = $db->selectCollection('myc');
$doc = array( "name" => "MongoDB",
"type" => "database",
"count" => 1,
"info" => (object)array( "x"=>100, "y"=>200),
"versions" => array("0.9.7", "0.9.8", "1.4.0")
);
//$ret = $collection->insert($doc);
//遍历:
$cursor = $collection->find();
//var_dump($cursor); //object(MongoCursor)[5] 5个对象
//返回$collection集合中文档的数量
echo '文档条数:'. $collection->count();
//
echo '<br>';
foreach ($cursor as $val)
{
echo $val['_id']. ': '. $val['name'] .'--'. $val['type'].'--'
. $val['info']['x'] .'--'. $val['info']['y'] .'--'. $val['versions'][2] .'<br>';
}
//更新:
//
$collection->update(array("a"=>10), array('$set'=>array('a'=>10000)));
//
$options['multiple'] = true; //默认是 false,是否改变匹配的多行
$collection->update(
array("info.x"=>100),
array('$set'=>array('info.y'=>800)),
$options);
//按条件查找:
$query = array("a"=>10000);
$cursor = $collection->find($query); //在$collectio集合中查找满足$query的文档
while($cursor->hasNext())
{
var_dump($cursor->getNext()); //返回了数组
}
//$collection -> findOne(); //返回$collection集合中第一个文档
//$joe = $collection->findOne(array("_id" => $ret['_id']));
//删除一个数据库:
//$connection->dropDB("...");
//$connection->dropDB("...");
//列出所有可用数据库:
$m->listDBs(); //无返回值
//关闭连接:
$connection->close();
?>
分享到:
相关推荐
MyQEE PHP Framework 是基于PHP5开发的完美支持HMVC模式的PHP框架,支持多项目开发。MyQEE借鉴了国外优秀框架的设计思路...完善了MongoDB的查询功能,完善了debug的显示 优化了Bootstrap中对debug的处理 优化了内部调用
4. 调试信息持久化支持:本地file,MongoDB,ElasticSearch 5. 支持 多模块,单模块,微应用. 6. 数据按 sessionid 存储, 多人共用测试环境协作开发时调试数据互不影响. 7. debugbar工具条可不注入正常页面, 访问 `/_...
php_xdebug/2.6.0 PHP程序调试器,跟踪、调试和分析PHP程序的运行状况; UPUPW PHP安全探针 支持服务器信息检测,PHP组件检测,PHP已编译模块检测,数据库连接测试等。 功能列表: UPUPW一键式Nginx+PHP+Redis+...
贝云cms(pc+app)付费内容管理系统一款基于thinkphp5的内容管理系统,具有一键生成控制器,模型,验证器,模板,通用增删改查,批量查询,通用分页,支持php7等功能采用模块。包含pc端,安卓app,苹果app,多端数据同步!主要...
六、丰富的数据库驱动,支持MYSQL、POSTGRESQL、ORACLE、SQLITE、MSSQL、MONGODB等数据库。 DoitPHP v1.5 更新日志 1、对视图文件格式为php和html两种情况的操作进行整合。可使用统一的视图类方法进行视图文件的...
六、丰富的数据库驱动,支持MYSQL、POSTGRESQL、ORACLE、SQLITE、MSSQL、MONGODB等数据库。 DoitPHP v1.5 更新日志 1、对视图文件格式为php和html两种情况的操作进行整合。可使用统一的视图类方法进行视图文件的...
简单应用程序,多模块应用程序和微型应用程序支持 持久收集的数据:保存到本地文件或MongoDB或ElasticSearch 由sessionid存储的数据,更适合团队开发。 您可以关闭注入调试栏,然后在新的浏览器选项卡上,访问/_...
贝云cms内容管理系统一款基于tp5.1的开源内容管理系统,提供文章,图集,下载,视频模型,采用了全新的架构设计和命名空间机制,融合了模块化、插件化的设计理念,帮助开发者节约web开发时间和精力,以最快的速度...
•数据库增加对 group_concat 的支持,MongoDB数据库驱动支持在group查询中使用distinct查询,修复MongoDB驱动力中查询slave在新的版本里可能导致连接失败的问题 •增加 BigInt 类库 •日期类库完善 •HttpClient...
[NGINX + MYSQL + PHP7] + MongoDB 这是一个简单的无所事事的ubuntu / trusty64框,其中包括用于运行LEMP开发环境的所有必需的人偶模块。 现在还包含XDebug 2.4,用于调试需求。什么是无业游民? Vagrant是一种工具...
采用全新的架构思想,引入了更多的PHP新特性,优化了核心,减少了依赖,实现了真正的惰性加载,支持composer,并针对API开发做了大量的优化,包括路由、日志、异常、模型、数据库、模板引擎和验证等模块都已经重构,...
添加widget组件模块,及layout插件, rpc服务化,支持hprose、yar等, 支持xhprof性能调试。requirementphp 5.3 ...
CmlPHP V2.x 在底层数据库查询模块做了缓存集成,开发者无需关注数据缓存的问题,按照相应的API调用即可获得最大性能。从而从根本上避免了新手未使用缓存,或缓存使用不当造成的性能不佳的问题。也杜绝了多人协同...
使用消息队列(ActiveMQ和RabbitMQ)在不同的应用程序模块之间发送消息 安全层 授权,其中:命令,应用程序服务? 储存库 不可知的基本存储库(使用Doctrine,MongoDB等实现) 可以在注释中使用原则并保持域解耦...
后端语言知识/经验(php、sql、MongoDB等) 如何处理遗留代码 终端命令 有 git/版本控制经验 依赖注入 TDD/BDD JPEG 对比 PNG 对比 GIF RESTful 阿贾克斯 PUT 与 POST 怪癖模式 HTML : HTML5 特性 元标记的使用 HTML...