在 Windows 上找不到 PHP 8.1.9 的 php_pdo_informix.dll

2023-12-25

我必须在安装了 Apache 2.4.54 / PHP 8.1.9(VS16 x64 线程安全)的 Windows 10(版本 20H2)上测试 php 应用程序。

已安装 informix-client-sdk-4.50.FC8,并且 INFORMIXDIR 环境变量指向 Informix 客户端 SDK 安装路径。

在 PECL PHP PDO_INFORMIX 页面中(https://pecl.php.net/package/PDO_INFORMIX https://pecl.php.net/package/PDO_INFORMIX),我找不到最新1.3.6版本的Informix驱动程序的Windows dll版本。

在changelog中,我可以看到自1.3.5版本以来增加了对PHP 8.1版本的支持。

您知道在哪里可以下载与 PHP 8.1.9 兼容的 php_pdo_informix.dll 文件(1.3.5 或 1.3.6)?

我尝试过使用位于以下位置的 php_pdo_informix-1.3.3-7.4-vc15-ts-x64.dll 文件https://github.com/flachglasschweiz/php_pdo_informix/tree/master/x64 https://github.com/flachglasschweiz/php_pdo_informix/tree/master/x64但我总是有以下错误消息:

  1. 在 Apache 启动时: PHP 警告:PHP 启动:无法加载动态库“pdo_informix”(尝试过:C:\php8\ext\pdo_informix(Le module sp\xc3\xa9cifi\xc3\xa9 est introuvable)、C:\php8\ext\php_pdo_informix。 dll (Le module sp\xc3\xa9cifi\xc3\xa9 est introuvable)) 在第 0 行未知

  2. 当 php 尝试连接到 Informix 数据库时: 错误:找不到驱动程序

请你帮助我好吗?

感谢致敬。


您需要为 PHP 8.x 构建 DLL。为 7.x 完成的一项(就像 Flachglasschweiz 的最新一项)repo https://github.com/flachglasschweiz/php_pdo_informix)将不起作用,因为它依赖于php7ts.dll.

您可以尝试从源代码构建它。使用最新的 1.3.6 和 VC2019 进行快速测试,它似乎按预期工作:

C:\php>php --version
PHP 8.1.9 (cli) (built: Aug  2 2022 14:17:26) (ZTS Visual C++ 2019 x64)
Copyright (c) The PHP Group
Zend Engine v4.1.9, Copyright (c) Zend Technologies

C:\php>cat t.php
<?php
try {
$conn = new PDO("informix:database=stores7;server=ids1410;", "informix", "password");
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
print "Connected!\n";
$stmt = $conn->query("select tabname from systables");
$res = $stmt->fetch( PDO::FETCH_BOTH );
$rows = $res[0];
echo "tabname: $rows.\n";
} catch (PDOException $e) {
    print $e->getMessage();
}
?>

C:\php>php t.php
Connected!
tabname: systables.

C:\php>

我在待决问题之一中发布了 DLLhere https://github.com/flachglasschweiz/php_pdo_informix/issues/6。看起来他已经没有环境来构建扩展了,因此从源代码构建对于任何 Informix PHP 用户来说都是最好的方法;)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Windows 上找不到 PHP 8.1.9 的 php_pdo_informix.dll 的相关文章

  • PHP 中的 Europe/London 和 UTC 有区别吗? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我知道 UTC 和 GMT 实际上是
  • PHP PDO 使用 bindParam 第一个参数(不带冒号)[重复]

    这个问题在这里已经有答案了 请检查这个 user id int GET user id sql DELETE FROM users WHERE user id user id query db gt prepare sql query gt
  • 正则表达式将从文本文件中提取句子

    我需要一个正则表达式来从文本文件中提取句子 示例文本 以 2004 年底发生的亚洲海啸灾难为例 对 Google 新闻 http news google com 的查询在一个月内 1 月 17 日 返回了超过 80 000 篇有关该事件的在
  • PHP 和 MySQL - 高效处理多个一对多关系

    我正在寻求一些有关使用 MySQL 和 PHP 检索和显示数据的最佳方法的建议 我有 3 个表 所有一对多关系如下 Each SCHEDULE有很多覆盖每个覆盖都有很多地点 我想检索这些数据 以便它可以全部显示在单个 PHP 页面上 例如列
  • Informix 中的组索引

    我有一张桌子叫hitlist 有 3 列 int id long hitlisted date long deleted date 我将根据这些列查询该表 histlisted date frequent hitlisted date de
  • 如何在自托管 WCF 中获取多部分表单数据?

    我已经搜索了很长一段时间 但没有找到我要找的东西 我在 Windows 应用程序中自行托管了一个 http WCF 现在 在我的服务方法之一中 我需要接收一个文件和一些表单数据字段 在类似的问题中 情况要么发送一个文件 这是通过流数据然后转
  • ntdll!kifastsystemcallret

    我的程序在执行结束时崩溃 甚至看不到堆栈展开信息 我只能看到这个 ntdll kifastsystemcallret 有人能提供一些线索吗 KiFastSystemCallRet 意味着线程处于系统调用中 x86 NT 系统调用调度的一个不
  • PHP 中给定日期的下一个工作日

    有人有一个 PHP 代码片段来计算给定日期的下一个工作日吗 例如 需要如何转换 YYYY MM DD 才能找到下一个工作日 例子 对于 03 04 2011 DD MM YYYY 下一个工作日是 04 04 2011 对于 2011 年 4
  • mongodb从不同数据库中选择

    我有大约 200 个 mongodb 数据库 每个数据库都有一个名为 Group 的集合 在该集合中有一个名为 meldingId 的字段 是否可以进行一个 mongodb 查询来查找不同数据库中的所有值 我设法通过 selectDB da
  • 在 Windows 中使用 PHP 创建受密码保护的 Zip 文件

    我正在 PHP 中创建给定文件的 zip 文件 下面是函数 function create zip file file name zip new ZipArchive zip name file name zip Zip name zip
  • 参数编号无效:参数未在[重复]中定义

    这个问题在这里已经有答案了 被困在这里有一段时间了 当我尝试运行代码时收到此错误 警告 PDOStatement execute SQLSTATE HY093 无效参数 number 参数未定义于 Applications XAMPP xa
  • PHP 数组到 JavaScript 数组

    假设我在 php 中有这个数组 cities array Caracas gt array air gt array 4 3 5 Working Days Saturday sea gt array 18 3 5 Days Wednesda
  • 在我的 php 网络服务器内副本中启用 mysqli

    正如这里所讨论的 mysqli 直接运行时有效 但通过 js ajax 运行时无效 https stackoverflow com questions 31523601 mysqli works when run directly but
  • Mac OS X 上的 /proc/self/cmdline / GetCommandLine 等效项是什么?

    如何在不使用 argc argv 的情况下访问 Mac OS X 上的命令行 在 Linux 上 我会简单地阅读 proc self cmdline or use GetCommandLine在 Windows 上 但我找不到 Mac OS
  • 在 php、ajax 或 javascript 中加载进度?

    任何人都知道如何在系统仍在服务器端获取数据的同时在客户端显示加载进度以及完成的百分比 例如 当我在客户端按下 确定 按钮时 它会调用服务器端从数据库收集数据 整个过程可能需要2到3分钟 如何在客户端显示加载进度 大约加载完成了多少 我怎样才
  • 获取url,给定的url重定向到

    我从 rss 链接中挖掘数据并获得一堆网址 例如 http feedproxy google com r electricpig 3 qoF8XbocUbE http feedproxy google com r electricpig 3
  • 添加 current_page_item 类

    我正在研究 WordPress 设计 我想创建一个自定义菜单 items wp get nav menu items Menu array order gt ASC orderby gt menu order post type gt na
  • 递归获取数组的键并创建下划线分隔的字符串

    现在我得到了一个包含某种信息的数组 我需要从中创建一个表 例如 Student Address StreetAddress gt Some Street StreetName gt Some Name Marks1 gt 100 Marks
  • 使用 Laravel 4 验证多个文件上传

    如何在 Laravel 4 中验证上传文件的数组 我已将其设置为允许多个文件 并且已测试这些文件是否存在于 Input file files 数组中 但如何验证每个文件呢 这是我尝试过的 notesData array date gt In
  • PHP 如何判断用户是否按下了 Enter 键或 Submit 按钮?

    我遇到的问题是我在一个表单中有多个提交输入 每个提交输入都有不同的值 我更愿意将它们保留为提交 Whenever the user presses Enter it is as though the topmost submit input

随机推荐