关于在windows上的wamp集成环境和xampp上安装mongo扩展
今天来学习下mongodb,在装PHP扩展的时候本来是一个很轻松的事情,结果并不是我想想的那么简单。
我的集成环境是xampp的php版本是5.6的x86.我开启了安全模式,所以我需要mongo时ts的安全模式扩展的x86扩展这些都不是很复杂。但是当我将下载好的扩展放入ext目录下后在php.ini中开启扩展后。重启apache竟然在phpinfo里面找到mongo的扩展信息、
经过自己的反复排除,无果。主要是apache的错误log竟然不报错误。php.ini中开启mongo不管有没有都不会报错。无奈之下我又测试了下wamp环境。也是如此;今天到公司里面找到我们技术老大。竟然分分钟给我搞定了。我除啦在用崇拜的眼光盯着我们老大外。还有一些对自己的思考。这就是差距。相同的时间里人家可以做很多事情。并不是人家偷懒是因为我们都拖累了他们。哎!
解决的方法。是环境变量。我在环境变量PATH中加入了D:/xampp/php/ext/;D:/xampp/php/;
这里付上我的下载链接:
https://www.mongodb.org/downloads
选择扩展的版本需要注意的是 你1.当前php的版本 2.以及你的phpinfo()中Thread Safety 的设置enabled(开启)选择 ts版本的 disabled(关闭)选择nts版本的 3.查看你的环境是32位的装x86;64位的装x86_64的。
将扩展重命名php_mongo.dll 放入到php/ext 目录下 并在php.ini文件中开启extension=php_mongo.dll .重启apache 查看 phpinfo() 中是否有。
OK本来是一个愉快的礼拜天,由于这个小小的问题。党务了很多事情。也验证了一句话, 理论和做东西是两码事。
承接上文,在安装的时候还遇到一个疑惑的问题,那就是mongo有两个php扩展。一个是php_mongodb.dll 和php_mongo.dll。以前这个两个扩展是区分的,在php的在线手册里面可以看到数据库扩展里面mongo占用了两个选项 一个是mongo 另一个就是mongodb官方的解释是 mongo用来做扩展的数据处理函数。mongodb是用来做mongo的debug用的。也就是调试工具用的。但显得最新的版本已经找不到关于mongodb的扩展了。我猜测是已经将mongo的debug函数合并到了mongo.dll扩展里面去了。但是php为了更好的兼容性。在php.ini文件中只要你的扩展版本与php的符合 那么php还是支持mongodb的扩展的。而在新的php5.6.16中已经将这两个合并了。优先解析php.ini文件中的 mongo.dll扩展。如果没有那么也会解析mongodb.dll的扩展。但是在phpinfo()的页面已经看不见关于mongodb的扩展了。只会显示mongo 。换句话说就是无论是mongo.dll还是mongodb.dll都会显示为mongo但优先考虑mongo.dll。


研究终于明朗了。其实作为程序猿来说,不需要细究这些问题。但由于本人以前是做运维出身,对于这些问题还是喜欢追究下。纯属扯淡。
关于在windows上的wamp集成环境和xampp上安装mongo扩展的更多相关文章
- php Windows系统 wamp集成环境下redis的使用
先说一下我的本地环境,使用的是wamp集成环境,(Apache 2.4.9.PHP 5.5.12.MySQL 5.6.17) windows下安装PHP扩展: 第一步:找到扩展文件(.dll),htt ...
- WAMP集成环境的安装
暑假已经正式开始,我的学习计划也开始有了初步的进展,今天学习的主要内容是PHP的基础知识,以及在电脑上面安装了集成的WAMP(Windows+Apache+MySQL+PHP). PHP的基础知识: ...
- wamp集成环境 开启rewrite伪静态支持
什么是伪静态 伪静态就是:动态网页通过重写URL的方法实现去掉动态网页的参数,但在实际的网页目录中并没有必要实现存在重写的页面. 伪静态的目的 最主要的就是迎合搜索引擎方便搜索引擎蜘蛛(Spider) ...
- wamp集成环境开启rewrite伪静态支持
wamp集成环境在安装完后,默认是没有开启伪静态的,所以有时把项目部署进去时如果源码里包含.htaccess文件的话,可能会出现500错误,这一般是因为不支持伪静态造成的,解决这个问题的办法就是开启伪 ...
- WAMP集成环境更改web根目录
使用WAMP集成环境,如何更改web根目录 做php开发使用WAMP集成环境的同学大部分有过这样的经历:如果你试图修改web根目录,那么你肯定会想到要修改apache/apache2.2.11/con ...
- php集成环境和自己配置的区别,php集成环境、php绿色集成环境、php独立安装版环境这三者的区别
最近有学生问我,直接使用PHP集成环境和我们自己独立安装的php环境有什么不一样吗? 答:PHP集成环境,和自己安装的php环境实际上没啥区别的,只不过大部分的集成环境进行了一些绿化操作,本质上没啥区 ...
- 在wamp集成环境下安装laravel5.2.*框架
虽然官方一直强烈推荐使用homestead,但是这个相对麻烦一点,所以我还是选择使用wamp集成开发环境.还有这里我只讲解windows系统下的安装,其他例如mac或linux就不写了,此文章是面向刚 ...
- wamp集成环境下帝国备份出错
我在本地wamp环境下面使用帝国备份王时,报错信息如下: Parse error: syntaxerror, unexpected $end in D:wampwwwhuifuclassfunctio ...
- IntelliJ IDEA for Mac(Java 语言开发的集成环境)破解版安装
1.软件简介 IntelliJ IDEA 是 macOS 系统上一款 java 语言开发的集成环境,IntelliJ 在业界被公认为最好的 java 开发工具之一,尤其在智能代码助手.代码自动提 ...
随机推荐
- js-JavaScript高级程序设计学习笔记1
第一章 1.一个完整的JavaScript实现应该由三个不同的部分组成:核心(ECMAScript).文档对象模型(DOM,提供访问和操作网页内容的方法和接口),浏览器对象模型(BOM,提供与浏览器交 ...
- 【BZOJ-3306】树 线段树 + DFS序
3306: 树 Time Limit: 10 Sec Memory Limit: 256 MBSubmit: 792 Solved: 262[Submit][Status][Discuss] De ...
- FAILED java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI:hdfs:192.*
运行的参数配置 hdfs:192.168.58.180/cf/userItem.txt 应该写成 hdfs://192.*
- VMware“该虚拟机似乎正在使用中”问题
在用VMware虚拟机的时候,有时会发现打开虚拟机时提示“该虚拟机似乎正在使用中.如果该虚拟机未在使用,请按“获取所有权(T)”按钮获取它的所有权.否则,请按“取消(C)”按钮以防损坏.配置文件: D ...
- 策略设计模式与c语言中的函数指针
在C语言中有一个非常重要的概念-函数指针,其最重要的功能是实现回调函数(指函数先在某处注册,而它将在稍后某个需要的时候被调用)在java语言中没有指针的概念,但是可以利用接口和指针实现类似的功能,具体 ...
- 【bzoj2809】 Apio2012—dispatching
http://www.lydsy.com/JudgeOnline/problem.php?id=2809 (题目链接) 题意 给出一棵树,每个节点有两个权值${c}$,${L}$,分别代表花费和领导力 ...
- bzoj1103: [POI2007]大都市meg
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1103 题目大意:在经济全球化浪潮的影响下,习惯于漫步在清晨的乡间小路的邮递员Blue Ma ...
- 软件工程个人作业-Week2
第一部分 调研, 评测 必应词典客户端版本:安卓版5.2.2 bug描述一:在学习页面点击“单词挑战”或“我爱说英语”会弹出“加载失败,请稍后重试”,无论点击多少次都加载不出来. bug描述二:在未 ...
- 使用Wireshark 抓取数据包
Wireshark 是一个网络封包分析软件.网络封包分析软件的功能是获取网络封包,并尽可能显示出最为详细的网络封包资料.Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换. 一 ...
- easyUI Form表单的密码验证是否相同
一.js文件中的代码: $(function(){ $.extend($.fn.validatebox.defaults.rules, { equals: {//定义一个比较相等与否的函数 valid ...