无法在 PHP 5.3.5 中加载自定义 PHP 扩展
我试图在 Windows XP/IIS 5.1 开发计算机上加载自定义 PHP 扩展,但失败得很惨。
我已经...
- 将 PHP 扩展 (php_fortranwrapper.dll) 放置在 PHP 5.3.5 安装的“ext”子文件夹中,
- 并编辑了正确的 php.ini 文件(即对应于 phpinfo() 输出中列出的“加载的配置文件”条目的条目)
- 在 php.ini 中设置
extension_dir
以指向上述 - 添加 加载 PHP 扩展
- ,重新启动 IIS(通过
iisreset
)
的“ext”子文件夹php.ini 中的 extension=php_fortranwrapper.dll
条目用于在运行 phpinfo 时 ()
脚本,它会尝试加载页面,直到 FastCGI 超时并出现以下错误: FastCGI 进程超出了配置的请求超时
如果我将 PHP 扩展重命名为 php_fortranwrapper1.dll,我在逻辑上会看到以下错误:
PHP 启动:无法加载动态库 'C:...\php-5.3.5\ext\php_fortranwrapper.dll' - 找不到指定的模块。
有关信息,我生成了 PHP使用 PHP 5.3.5 和 PHP4Delphi 进行扩展,PHP4Delphi 是一个从 Delphi 源代码编译 PHP 扩展的工具。我的 Delphi 代码加载一个 Fortran DLL,并将一个整数传递给该 Fortran DLL 中的函数,并期望返回一个整数结果。
I'm attempting to load a custom PHP extension on a Windows XP/IIS 5.1 development machine but I'm failing miserably.
I have...
- placed the PHP extension (php_fortranwrapper.dll) in the "ext" subfolder of my PHP 5.3.5 installation
- been editing the correct php.ini file (i.e. the one corresponding to the "Loaded Configuration File" entry listed in the phpinfo() output)
- set
extension_dir
in php.ini to point to the aforementioned "ext" subfolder - added an
extension=php_fortranwrapper.dll
entry in php.ini to load the PHP extension - restarted IIS (via
iisreset
)
On running a phpinfo()
script, it tries to load the page until FastCGI times out with the following error:
The FastCGI process exceeded configured request timeout
If I rename the PHP extension to say php_fortranwrapper1.dll, I logically see the following error:
PHP Startup: Unable to load dynamic library 'C:...\php-5.3.5\ext\php_fortranwrapper.dll' - The specified module could not be found.
For information, I generated the PHP extension using PHP 5.3.5 and PHP4Delphi, a tool which compiles a PHP extension from Delphi source code. My Delphi code loads a Fortran DLL and passes an integer to a function in that Fortran DLL and expects an integer result back.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您以前制作过自己的自定义 PHP 外部扩展吗?
您能否发布一些 Delphi 代码,以便人们可以了解其内部工作原理?
以下是 Igal Raizman 使用 C++ 编写的示例,其中可能有一些关于如何测试的有用想法:
http://www.devarticles.com/ c/a/Cplusplus/Developing-Custom-PHP-Extensions-Part-1/
如果您以前没有取得过任何成功,也许这个想法将是一个开始?
Have you made any of your own custom PHP external extensions before?
Can you post some of your Delphi code so people can peer into what the inner workings are?
Here is an example by Igal Raizman using C++ that may have some usable ideas on how to test:
http://www.devarticles.com/c/a/Cplusplus/Developing-Custom-PHP-Extensions-Part-1/
If you haven't had any success before, maybe this idea would be a start?