MongoDB与php的配合使用 【windows版】
通过学习了如何使用和部署MongoDB,尝试了一下如何将mongodb应用到php的程式中去。
1.预备工作
首先得准备好mongodb,并按照相关方法部署以及服务能正常运行中。
对于初学者,可以参考‘码农’的教程,写得非常详细与实用。
参考方法与教程:http://www.cnblogs.com/huangxincheng/archive/2012/02/18/2356595.html
d:\mongodb\bin>net start MongoDB
php与apache环境的准备
要是比较的懒,可以去XAMPP下一个一体化安装包,包括php/apache/mysql等,并且环境已经是集成了的。只需要向htdocs/下面放php程序就可以访问。
XAMPP地址:http://www.apachefriends.org/zh_cn/xampp-windows.html (完整的安装与应用)
mongodb 的 drivers,就是一些动态链接库文件。
地址:https://s3.amazonaws.com/drivers.mongodb.org/php/index.html
2.mongodb与php的集成
(1).找到xampp中的ext目录:
比如我的是安装在D盘: D:\xampp\php\ext
(2).将下载的动态链接库文件copy到上面的目录D:\xampp\php\ext
php_mongo-1.4.5-5.5-vc11.dll copy to D:\xampp\php\ext
(3).修改php.ini的配置
位置:D:\xampp\php.ini
用编辑器打开此文件,找到 ; Windows Extensions
并在此块的最后添加一行配置(约:1033行的位置)
extension=php_mongo-1.4.5-5.5-vc11.dll
保存,并重启Apache服务。
3.调试与调用
在xampp/htdocs/下面写一个test.php ,
<?php phpinfo(); ?>
在浏览器上运行此test.php,如果可以找到配置项,
mongo
MongoDB Support | enabled |
---|---|
Version | 1.4.5 |
SSL Support | enabled |
Streams Support | enabled |
Directive | Local Value | Master Value |
---|---|---|
mongo.allow_empty_keys | 0 | 0 |
mongo.chunk_size | 262144 | 262144 |
mongo.cmd | $ | $ |
mongo.default_host | localhost | localhost |
mongo.default_port | 27017 | 27017 |
mongo.is_master_interval | 15 | 15 |
mongo.long_as_object | 0 | 0 |
mongo.native_long | 0 | 0 |
mongo.ping_interval | 5 | 5 |
则证明,mongodb已经与php集成在一起了。
可以写个小程序测试一下:
<?php //我的mongodb是安装在本机,并且使用的是2222端口。
//mongodb://$server-path or $ip-address:$port
$client = new MongoClient("mongodb://127.0.0.1:2222"); //select test database and select person records.
$collection = $client->test->person; $result = $collection->findOne();
var_dump($result); //NULL //从浏览器上看到的结果为:NULL $array = array(
'name'=>'test',
'age'=>25,
'address'=>array(
'province'=>'guangdong',
'city'=>'shenzhen',
'zone'=>array(
'area'=>'nanshan',
'local'=>'xilili')
)
);
$ret = $collection->insert($array);
var_dump($ret); //结果为:
array(4) {
["n"]=>
int(0)
["connectionId"]=>
int(2)
["err"]=>
NULL
["ok"]=>
float(1)
} $res = $collection->findOne();
var_dump($res);
//结果为:
array(4) {
["_id"]=>
object(MongoId)#7 (1) {
["$id"]=>
string(24) "52d605b0a6b9f6581000002b"
}
["name"]=>
string(4) "test"
["age"]=>
int(25)
["address"]=>
array(3) {
["province"]=>
string(9) "guangdong"
["city"]=>
string(8) "shenzhen"
["zone"]=>
array(2) {
["area"]=>
string(7) "nanshan"
["local"]=>
string(6) "xilili"
}
}
} //由mongo的客户端直接查看db也可以看到
d:\mongodb\bin>mongo 127.0.0.1:2222 >use test
>db.person.find()
MongoDB与php的配合使用 【windows版】的更多相关文章
- MongoDB 3.0安全权限访问控制(Windows版)
MongoDB 3.0安全权限访问控制(Windows版) 1.首先,不使用 –auth 参数,启动 mongoDB: mongod --dbpath "d:\mongodb\data\db ...
- MongoDB 3.4 安装以 Windows 服务方式运行
1.首先从https://www.mongodb.com/download-center#community 下载社区版,企业版也是类似. 2.双击运行安装,可自定义安装路径,这里采用默认路径(C:\ ...
- Sass安装(windows版)
Sass安装(windows版) 在 Windows 平台下安装 Ruby 需要先有 Ruby 安装包,大家可以到 Ruby 的官网(http://rubyinstaller.org/download ...
- MySQL设置字符集为UTF8(Windows版)
Windows版MySQL设置字符集全部为utf8的方式 MySQL安装目录下的my.ini文件 [client]节点 default-character-set=utf8 (增加) [mysq ...
- python之环境搭建windows版
1.先到python官网下载属于自己的的python版本,有linux版,有mac版,有windows版:https://www.python.org/downloads/windows/ 2.下载完 ...
- Windows版的各种Python库安装包下载地址与安装过程
在用Python开发时(Windows环境),会碰到需要安装某个版本的第三方库,为了以后查找.安装方便,总结如下: windows版的各种Python库安装包下载地址:http://www.lfd.u ...
- 【转发】NPAPI开发详解,Windows版
NPAPI开发详解,Windows版 9 jiaofeng601, +479 9人支持,来自Meteor.猪爪.hanyuxinting更多 .是非黑白 .Yuan Xulei.hyolin.Andy ...
- 微信电脑版真的要来了 微信Windows版客户端1.0 Alpha推出
微信电脑版的搜索量一直很大,但只有网页版,之前也写了微信网页版APP - 网页微信客户端电脑版体验,在键盘上打字的感觉就是快.现在微信Windows版客户端1.0 Alpha推出了,来一睹芳容吧(20 ...
- 如何让windows版Safari支持H5 audio/video?
今天在windows版Safari上看效果的时候惊奇地发现它竟然不支持HTML5的audio/video, 这样的话就无法复现不少ios上出现的问题. 在同事提醒下, 发现Safari HTML5 A ...
- Redis Windows版安装及简单使用
1.Redis简介及优势 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库. 特点: Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次 ...
随机推荐
- css 默认样式
body,textarea,input,select,option {font-size:12px;color:#333;font-family:Tahoma,Arial,sans-serif;} h ...
- 【Mood-3】心声
每天醒来,我都会想明白一件事情,时间是不会停下来的,如果打算活下去的话,那么我们会有25岁,会有30岁,更会有40岁,为了不让时间风干我的理想,未来只剩下抱怨,那么为明天伏笔,今天只有努力.耸耸背上行 ...
- UnicodeEncodeError: ‘ascii’ codec can’t encode characters in position xxx ordinal
python在安装时,默认的编码是ascii,当程序中出现非ascii编码时,python的处理常常会报这样的错UnicodeDecodeError: 'ascii' codec can't deco ...
- C#中XML与对象之间的序列化、反序列化
直接上代码: using System; using System.IO; using System.Text; using System.Xml; using System.Xml.Serializ ...
- CSS/CSS3 如何实现元素水平居中
更新:可直接访问 [CSS/CSS3 如何实现元素水平居中] 查看效果,右键查看源代码 -------------------------------------------------分割线---- ...
- 一道简单的动态规划题目——House Robber
一.题目 House Robber(一道Leetcode上的关于动态规划的简单题目)具体描述如下: There is a professional robber planning to rob hou ...
- hdu-5700 区间交(二分+树状数组)
题目链接: 区间交 Problem Description 小A有一个含有n个非负整数的数列与mm个区间.每个区间可以表示为li,ri. 它想选择其中k个区间, 使得这些区间的交的那些 ...
- uva 12587 二分枚举
思路:维护一个森林,二分枚举最小的最大值. #include<set> #include<map> #include<cmath> #include<queu ...
- 访问iPhone通讯录的问题
每个APP只显示一次上图的提示,即使卸载APP也不显示.如果想再次显示提示,可进入 设置-->通用-->还原-->还原位置与隐私,即可. 而且在ios6中文环境下,访问通讯录会出现错 ...
- C#常用的字符串操作, 包括截取
1.取字符串的前i个字符 (1)string str1=str.Substring(0,i); (2)string str1=str.Remove(i,str.Length-i); 2.去掉字符串的前 ...