【问题标题】:Anyone can provide uploadprogress.dll extension for php 5.3.0?任何人都可以为 php 5.3.0 提供uploadprogress.dll 扩展名吗?
【发布时间】:2010-08-15 22:31:42
【问题描述】:

我需要 windows 上 php 的 uploadprogress 扩展。我从here 下载了dll,但版本与我的php 不匹配。我有 php 5.3.0 build 20090626 VC++6。而且我找不到兼容的uploadprogress.dll。 我无法构建它,因为我没有我的版本的 php 源代码。 我也不想使用 APC 扩展。谁能帮我提供这个dll?

【问题讨论】:

  • “我无法构建它,因为我没有我的版本的 php 源代码” - 这可以修复:php.net/releases 和 phpinfo() 可以告诉您哪些配置选项已用于构建你的 php 版本。
  • @VolkerK 谢谢你的链接!我正在下载它。我有 PHP 源版本 5.3.3,我无法使用 VStudio 2008 在 Windows 下构建(大约 5004 个错误:D)。也许这个对我有帮助。
  • 你可以请 Pierre 来构建它。我没有 VC6……只有 VC9 和 VC10。您使用VC6有什么原因吗?使用最新版本编译器的构建速度更快。
  • @Artefacto 实际上我正在使用 wamp,我没有时间再次配置我所有的开发环境和设置。而且 apache2 也不适用于用 VC9 编译的 php。
  • @Mor nebm.ist.utl.pt/~glopes/misc/php_uploadprogress.dll(VC9,线程安全,发布,x86)

标签: php php-extension


【解决方案1】:

您是否考虑过使用 JavaScript API 进行上传进度?它们更加准确,让您无需服务器回调即可报告进度。

https://developer.mozilla.org/en/using_xmlhttprequest#Monitoring_progress

应该注意,在这种情况下,上传是通过 AJAX 进行的,这可能有用,也可能没有帮助。仅使用 JS 即可取消、重新启动或以其他方式与基于 AJAX 的上传进行交互。

缺点是捆绑数据有点复杂。一些用户代理仍然存在二进制字符串的问题,因此可能需要在上传数据之前将数据转换为 base 64。此外,应该假设并非所有用户代理都支持此功能。

希望这在某种程度上有所帮助。

【讨论】:

  • 其实我不需要看进度!!我想要上传文件的内容,即使它没有完全上传。这个扩展有这个功能,所以我想使用它。
【解决方案2】:

对于任何寻找可与 Wamp2 和 php5.3 一起使用的 VC6 构建的 dll 的人,我在这里找到了一个:http://www.xs4all.nl/~lupro/zooi/uploadprogress/php_uploadprogress-1.0.1-5.3-Win32-VC6-x86.zip 这似乎对我有用。请注意,这不是我构建的,只是经过大量搜索后偶然发现的

【讨论】:

    【解决方案3】:

    这个问题有两种解决方案。一种是使用 php 和 VC6 自己构建扩展。不建议这样做,因为会有很多错误和错误。第二种解决方案是将apache升级到apache Lounge(它是用VC9构建的),然后使用pierreArtefacto提供的php VC9和uploadprogress.dll或用VC9构建。

    【讨论】:

    • 会有很多bug和错误吗?仅当您不遵循 Pierre 在 wiki 中提供的说明时...
    • 是的!我按照说明进行操作,最后留下了很多错误和错误。可能我不专业吧,反正其他的方法就简单多了!