问题标签 [php-extension]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
325 浏览

php - windows xp上的php扩展

我已经在我的 xp 上安装了 php,但未能向 mysql 添加扩展

这是我在 php.ini 中所做的:

并且有这样一个文件ext/

但是当我查看时phpinfo(),才发现仍然没有添加 mysql 扩展。

我做错了什么?

0 投票
2 回答
3363 浏览

php - 使用 Visual Studio 2008 在 Windows 上编译我自己的 PHP 扩展

我写了一个PHP扩展,它可以在linux下成功编译和运行。但是在windows上,我遇到了一些问题。

我根据http://blog.slickedit.com/?p=128使用 PHP 源版本 5.2.10 在 windows 上进行了编译,编译后生成了 dll 文件。但是当我尝试使用 dll 文件时,它报告了我启动 Apache(Wamp 服务器)时的内存问题。然后我开始调试过程,似乎 REGISTER_INI_ENTRIES() 有问题。

这是 PHP 扩展源代码http://www.bluefly.cn/xsplit.tar.gz,它在 Linux 上运行良好。但我也想让它在 Windows 上运行。

对不起,我不是专业人士,所以我希望有人可以帮助我。

任何帮助表示赞赏并提前感谢~

0 投票
1 回答
747 浏览

php - 从 PHP 中的扩展函数返回 unsigned long long

如果我需要返回 long,我只需使用 RETURN_LONG 宏。但是如果我需要返回一个 unsigned long long 我该怎么办。如果我使用这个宏,数据就会损坏......

0 投票
2 回答
2221 浏览

php - 未找到 PHP 扩展

PHP 不断失败并告诉我它由于某种原因找不到 /ext/php_mssql.dll。显然,我检查了该文件夹,它就在那里。我不确定它为什么会失败。有什么建议么?

编辑:

我将 ntwdblib.dll 放入我的 php 目录中,给出的错误来自“错误的网关。指定的 cgi 应用程序因未返回一组完整的 http 标头而行为异常。它返回的标头是“php 无法启动:可以不加载 /ext/php_mssql.dll" 根本不返回任何标题。

HTTP 错误 502.2 - Bad Gateway 指定的 CGI 应用程序因未返回完整的 HTTP 标头集而行为不端。它返回的标题是“”。

0 投票
1 回答
4699 浏览

php - 如何将 Windows 的 PHP 5.3 扩展编译为 DLL?

我目前正在重写PHP最初为PHP 4.2.2. 我的问题编写的扩展,是让构建/编译过程生成一个.dll而不是将扩展编译到PHP核心中。环境是windows server 2003。我用的是Visual Studio 2008。

我使用 EXT_SKEL 脚本生成框架,我可以成功地将扩展编译到 php 核心中。我正在尝试将其编译为 a .dll,以便我可以轻松地将其分发给我的客户。谁能指出我正确的方向,告诉我如何告诉PHP 5.3构建过程我想将我的扩展编译为 a.dll而不是静态地编译到PHP自身中?

要构建扩展的框架,我运行:

  1. php.exe ext_skel_win32.php --extname=myextension --proto=myprototypefile.dat
  2. 修改 config.w32 以取消注释“ARG_ENABLE”行并启用默认值
  3. buildconf.bat
  4. cscript /nologo configure.js
  5. 制作

我确认我可以在 PHP 中运行扩展的方法,但是它不会生成可分发的 .dll。相反,它将方法编译到 PHP 二进制文件中。谁能指出我正确的方向?

0 投票
4 回答
2801 浏览

php - 使用 PHPdoc 记录 PHP 扩展

我用 C 编写了一个 PHP 扩展,我想创建PHPdoc文档,以便我的用户在调用我的扩展时可以在他们的 PHP IDE(在本例中为 Netbeans)中获得内联文档。

理想情况下,我想通过在 C 代码中嵌入 PHPdocs 来做到这一点,以将实现和文档保持在一起。

假设可以将 PHPdocs 嵌入到 C 中,需要哪些额外步骤才能使文档出现在 Netbeans 中(就像 PHP 代码的 PHPdocs 一样)?

编辑:

O'Reilly Programming PHP指的是/* {{{ proto文档生成中使用的注释格式,但我不确定所引用的脚本是否生成 PHPdocs:

{{{ proto 行不仅用于在编辑器中折叠,而且还被 PHP 文档项目中的 genfunclist 和 genfuncsummary 脚本解析。如果您永远不会分发您的扩展并且没有将其与 PHP 捆绑在一起的野心,您可以删除这些评论。

0 投票
5 回答
2402 浏览

php - Zend Studio 中 PHP 扩展的代码完成?

从 PECL 安装 HTTP 扩展后,我希望 Zend Studio 6 能够识别提供的 HTTP* 类并提供代码完成功能。然而,情况并非如此。如何让 Zend Studio 识别 PHP 扩展提供的类?具体来说,我希望能够在这些类上使用代码竞争。

0 投票
1 回答
1443 浏览

php - 如何将数组作为对象属性添加到 PHP 扩展中声明的类?

我希望我的 PHP 扩展声明一个等效于以下 PHP 的类:

我遵循“高级 PHP 编程”和“扩展和嵌入 PHP ”中的示例,并且能够在PHP_MINIT_FUNCTION.

但是,当我使用相同的方法在 中声明数组属性时PHP_MINIT_FUNCTION,我在运行时收到以下错误消息:

高级 PHP 编程的第 557 页上有一个示例,说明如何声明创建数组属性的构造函数,但示例代码无法编译(第二个“对象”似乎是多余的)。

我修复了该错误并将其调整为我的代码:

这可以编译,但它在构造时给出了相同的运行时错误。

0 投票
3 回答
10399 浏览

php - 用 C++ 扩展 PHP?

我有一个用 PHP 编写的性能密集型例程,我想移植到 C++ 以提高性能。有没有办法使用 C++ 编写插件或扩展或其他东西并从 PHP 与它交互?无需手动编辑实际的 PHP 源代码?

0 投票
3 回答
889 浏览

c - 使用 zend 读取 php.ini 进行 PHP 扩展(不是 PHP 语言)

我正在尝试使用 zend 从 php.ini 读取一些设置。我正在使用的 API 是

但它总是返回 0。我仔细检查了名称,并确保我在 php.ini 中指定的值大于 0。有什么我遗漏的吗?