当前位置:  开发笔记 > 编程语言 > 正文

用于Windows的PHP 7.0 ODBC驱动程序

如何解决《用于Windows的PHP7.0ODBC驱动程序》经验,为你挑选了2个好方法。

我将PHP 5.6.30(https://www.apachefriends.org/de/download.html)升级到PHP 7.0(https://bitnami.com/stack/wamp/installer)

到目前为止,一切都运行良好,当我使用MySQL数据库时,它将我的页面的加载时间从1,2秒减少到约300毫秒.但是现在我正在尝试使用以下简单脚本连接到MSSQL数据库,这对我的旧安装(PHP 5.6)工作正常:


但是现在我的日志中出现了一个错误:

[Thu Dec 10 11:55:26.629956 2015] [:error] [pid 260:tid 968] [client :: 1:63003] PHP致命错误:未捕获错误:在C:\ Bitnami \中调用未定义的函数odbc_connect() wampstack-7.0.0-0\apache2\htdocs\test\query.php:11 \n堆栈跟踪:\n#0 {main} \n在C:\ Bitnami\wampstack-7.0.0-0\apache2\htdocs中抛出第11行的\ test\query.php

首先我想,我的php.ini有一个缺少的扩展名,所以我启用了"extension = php_pdo_odbc.dll"

与5.6版本中的php.ini的区别在于有扩展名:"extension = php_mssql.dll"已启用.但我无法在新的PHP 7.0.ini中找到它们

所以我的意图是没有odbc和PHP 7的现有驱动程序了吗?我在这里找到了一些Linux驱动程序:https: //aur.archlinux.org/packages/php7-odbc/

但是我的Windows环境需要一些东西.

有没有人有同样的问题,并已修复它?

感谢和问候Domi



1> 小智..:

看看你的php.ini,字符串

extension=php_odbc.dll

似乎在新安装中缺少,至少我不得不在我的新XAMPP安装(7.0.1)中手动添加它,并且意外地只是激活了pdo_odbc.dll



2> Tim Penner..:

PHP7在默认情况下,有几个默认禁用的模块PHP5

不过,此扩展很容易,因为扩展名应该已经在\ext\随附的文件夹中PHP7。您只需要修改php.ini文件以包含以下行:

extension=php_odbc.dll

上面的线是已经存在和注释; 您实际上需要添加它!

PHP在其中查找php.ini文件,C:\Windows\但它也可能位于您计算机上的其他位置。因此,请同时检查C:\Windows\C:\php\或在其他任何地方安装PHP。

进行更改后,您可以像下面这样从命令行检查结果:

C:\php\php.exe -m

或(在重新启动Web服务器/机器之后)来自如下.phtml文件:


这将输出已启用模块的列表,现在应包括odbc;如果不是,则可能是您修改了错误的php.ini文件(继续查看)或忘记了重新启动Web服务器/计算机。


提示:

如果您使用的是非标准安装,则可以使用如下所示的绝对路径:

extension=C:\php7x64\ext\php_odbc.dll

推荐阅读
mobiledu2402852357
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有