最近我格式化了我的笔记本电脑并安装了Windows 7 Home Basic 64位,EasyPHP 12.1(升级到5.4.6版本),Microsoft SQL Server 2012 和 SQL Native Client界面64位的全新副本Microsoft网站上的要求中指定的版本。我已下载PHP的Microsoft SQL驱动程序(文件SQLSRV30.exe)并将文件 php_pdo_sqlsrv_54_ts.dll 和 php_sqlsrv_54_ts.dll 复制到 ext 文件夹。
http://postimage.org/image/mv4dcc3aj/
还在php.ini中添加了条目
http://postimage.org/image/ruwxxeknj/
我根据EasyPHP的快照文件使用线程安全版本,它说构建:C:\ php-sdk \ php54dev \ vc9 \ x86 \ obj \ Release_TS
好的phpinfo()没有显示对Microsoft SQL Server的任何支持!我以前做过这个,我知道它有效。任何人都可以帮助我,我错过了php.ini或其他地方的东西吗?
由于
答案 0 :(得分:3)
最终我发现了这个问题!我正在修改错误的php.ini文件!
在C:\ Program Files(86)\ EasyPHP-12.1中搜索php.ini显示4个文件!我决定在所有这些中将html_errors的值从On更改为Off,只是为了在php_info()的输出中看到效果。通过反复试验我发现要更改的正确php.ini是
C:\ Program files(86)\ EasyPHP-12.1 \ apache \ php.ini
在那里有一行说
extension_dir =“C:\ PROGRA~2 \ EASYPH~1.1 \ php \ php546x130128105026 \ ext \”
然后我意识到Apache的php.ini从外部文件夹中获取DLL文件,而我在目录中修改了不同的php.ini
C:\ Program Files(x86)\ EasyPHP-12.1 \ php \ php546x130128105026
其中包含ext文件夹!好吧,我做错了。我将两个DLL文件保存在该ext文件夹中,并在Apache的php.ini
中添加了这两行延长= php_sqlsrv_54_ts.dll 延长= php_pdo_sqlsrv_54_ts.dll
所以现在EasyPHP可以与微软的SQL服务器通信,如php_info()输出所示。