Windows上的Zend服务器没有加载php_ibm_db2.dll

时间:2013-11-20 17:04:50

标签: php windows db2 zend-server

我花了一天时间尝试在localhost(Windows 8)上创建Zend Server,读取i5系统上的DB2文件。

我已经按照很多指南阅读并阅读了类似问题的答案,现在:

  • 我的机器上安装了ibm express-C
  • 我在ext \ folder
  • 中有php_ibm_db2.dll
  • application.ini的extension = php_ibm_db2.dll指向正确的文件夹
  • 我的环境变量路径有[...] C:\ Program Files \ ibm \ gsk8 \ lib64; C:\ Program Files(x86)\ ibm \ gsk8 \ lib; C:\ PROGRA~1 \ IBM \ SQLLIB \ BIN; C:\ PROGRA〜1 \ IBM \ SQLLIB \ FUNCTION; C:\ PROGRA〜1 \ IBM \ SQLLIB \ SAMPLES \ REPL;

但重新启动服务器,在日志中,我发现“PHP警告:PHP启动:无法加载动态库'C:\ Program Files(x86)\ Zend \ ZendServer \ lib \ phpext \ php_ibm_db2.dll'”< / p>

即使它是dll的正确路径。

服务器无法识别db2_connect()(未定义)

知道发生了什么事吗? Windows 8 64bit可能是问题吗?

2 个答案:

答案 0 :(得分:0)

我的猜测是DLL是针对不兼容的PHP版本编译的。您可以在此处获取扩展的备用版本: http://sourceforge.net/projects/db2mc/files/IBM_DB2%20PHP%20Driver%20for%20Windows/

我没有看到PHP 5.5的构建。这可能意味着如果不自行编译,您将无法使用PHP 5.5。

对于PHP 5.4,请注意PHP的ts(线程安全)和nts(非线程安全)安装之间的区别。

对于较旧的PHP版本,请务必抓取使用兼容编译器构建的内容。您可能需要VC9(Visual C ++ 9),因为它对应于official PHP download

答案 1 :(得分:0)

application.ini中指向的extension_dir是什么。看起来你已经指定了extension =和extension_dir也有一些价值。因此,可能会追加2条路径,导致错误

如果案例是这样的话,你可以检查上面的内容并尝试通过更正扩展名为extension_dir的路径和扩展名中的模块名称(php_ibm_db2.dll)。

由于

普利文