Windows上php5.6操作mongodb数据库示例【配置、连接、获取实例】


Posted in PHP onFebruary 13, 2019

本文实例讲述了Windows上php5.6操作mongodb数据库的方法。分享给大家供大家参考,具体如下:

一、配置

针对不同线程安全、VC版本的 PHP 发行版,可从 PECL 获取到预编译的二进制文件。 解压,并把 php_mongo.dll 放到 PHP 扩展目录(默认是 “ext”)。

将以下内容添加到 php.ini 文件:

extension=php_mongo.dll

Note: 为 Windows 用户添加额外的依赖 DLL

为了使此扩展生效, DLL 文件必须能在 Windows 系统的 PATH 指示的路径下找到。在我的系统,我是这么做的:

把php的安装目录添加到系统Path,如下图所示:

Windows上php5.6操作mongodb数据库示例【配置、连接、获取实例】

虽然将 DLL 文件从 PHP 文件夹复制到 Windows 系统目录也行,但不建议这样做。 此扩展需要下列文件在 PATH 路径中: libsasl.dll

重启Apache服务。测试是否配置成功。

<?php
phpinfo();
?>

在我的电脑成功配置如下图所示:

Windows上php5.6操作mongodb数据库示例【配置、连接、获取实例】

二、连接mongodb数据库

说完了在windows如何配置mongodb数据库;那么我们现在就来实现如何连接数据库。

使用下面列出的其中一种方法连接:

<?php
$connection = new Mongo(); // 连接到 localhost:27017
$connection = new Mongo( "mongodb://IP" ); // 连接到远程服务器 (使用默认端口: 27017)
$connection = new Mongo( "mongodb://IP:65432" ); // 链接到远程服务器,使用自定义的端口
$connection = new MongoClient(); // 连接到 localhost:27017
$connection = new MongoClient( "mongodb://IP" ); // 连接到远程服务器 (使用默认端口: 27017)
$connection = new MongoClient( "mongodb://IP:65432" ); // 链接到远程服务器,使用自定义的端口
?>

这里并不需要从服务器断开连接。这个驱动使用了持久性连接,并会在下次试图连接到同一服务器时重用它。

如果要断开,则用如下:

$connection->close();

三、获取mongodb实例

要选择数据库,使用:

<?php
$connection = new MongoClient();
$db = $connection->dbname;
?>

这个数据库不需要提前建好,当你使用的时候,就回自动创建。

要注意的是,可能一不小心建立了一个新的数据库,会产生奇怪的错误。如下面的例子:

<?php
$connection = new MongoClient();
$db = $connection->mybiglongdbname;
// do some stuff
$db = $connection->mybiglongdbanme;
// now connected to a different database! 注意此时选择了另一个数据库!
?>

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php mysql索引问题
Jun 07 PHP
MYSQL 小技巧 -- LAST_INSERT_ID
Nov 24 PHP
php 读取shell管道传输过来的内容
Mar 01 PHP
php全角字符转换为半角函数
Feb 07 PHP
PHP输出缓存ob系列函数详解
Mar 11 PHP
php 解压rar文件及zip文件的方法
May 05 PHP
php+ajax实现无刷新分页的方法
Nov 04 PHP
PHP获取photoshop写入图片文字信息的方法
Mar 31 PHP
mac系统下为 php 添加 pcntl 扩展
Aug 28 PHP
PHP+Apache环境中如何隐藏Apache版本
Nov 24 PHP
浅谈php使用curl模拟多线程发送请求
Mar 08 PHP
PHP批斗大会之缺失的异常详解
Jul 09 PHP
PHP封装的简单连接MongoDB类示例
Feb 13 #PHP
总结PHP中初始化空数组的最佳方法
Feb 13 #PHP
PHP convert_cyr_string()函数讲解
Feb 13 #PHP
php如何比较两个浮点数是否相等详解
Feb 12 #PHP
PHP+Ajax实现的检测用户名功能简单示例
Feb 12 #PHP
jQuery ajax+PHP实现的级联下拉列表框功能示例
Feb 12 #PHP
PHP chunk_split()函数讲解
Feb 12 #PHP
You might like
ThinkPHP关联模型操作实例分析
2012/09/23 PHP
解析php防止form重复提交的方法
2013/07/01 PHP
PHP实现多文件上传的方法
2015/07/08 PHP
详解php协程知识点
2018/09/21 PHP
详解PHP中的8个魔术常量
2020/07/06 PHP
不同浏览器对回车提交表单的处理办法
2010/02/13 Javascript
关于JS管理作用域的问题
2013/04/10 Javascript
捕获浏览器关闭、刷新事件不同情况下的处理方法
2013/06/02 Javascript
JavaScript和CSS交互的方法汇总
2014/12/02 Javascript
jQuery结合HTML5制作的爱心树表白动画
2015/02/01 Javascript
JavaScript从数组中删除指定值元素的方法
2015/03/18 Javascript
详解JS正则replace的使用方法
2016/03/06 Javascript
如何使用angularJs
2017/05/08 Javascript
ionic2自定义cordova插件开发以及使用(Android)
2017/06/19 Javascript
用VueJS写一个Chrome浏览器插件的实现方法
2019/02/27 Javascript
ES6知识点整理之函数数组参数的默认值及其解构应用示例
2019/04/17 Javascript
layui--js控制switch的切换方法
2019/09/03 Javascript
解决Idea、WebStorm下使用Vue cli脚手架项目无法使用Webpack别名的问题
2019/10/11 Javascript
Vue脚手架编写试卷页面功能
2020/03/17 Javascript
Vue之封装公用变量以及实现方式
2020/07/31 Javascript
Python下使用Psyco模块优化运行速度
2015/04/05 Python
Python脚本简单实现打开默认浏览器登录人人和打开QQ的方法
2016/04/12 Python
Python基础篇之初识Python必看攻略
2016/06/23 Python
代码详解django中数据库设置
2019/01/28 Python
python正则爬取某段子网站前20页段子(request库)过程解析
2019/08/10 Python
Python socket聊天脚本代码实例
2020/01/02 Python
在Python中用GDAL实现矢量对栅格的切割实例
2020/03/11 Python
10分钟入门CSS3 Animation
2018/12/25 HTML / CSS
如何反序的迭代一个序列?how do I iterate over a sequence in reverse order
2012/02/04 面试题
应届生污水处理求职信
2013/11/06 职场文书
应用艺术专业个人的自我评价
2014/01/03 职场文书
网上快餐厅创业计划书
2014/02/01 职场文书
《语言的突破》读后感3篇
2019/12/12 职场文书
忆童年!用Python实现愤怒的小鸟游戏
2021/06/07 Python
Python中常见的反爬机制及其破解方法总结
2021/06/10 Python
Golang流模式之grpc的四种数据流
2022/04/13 Golang