php – 使用Zend实现文件上载进度

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – 使用Zend实现文件上载进度脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
嗨我试图用Zend实现上传进度但是我还没有找到任何详细的教程.指针会很有用.

谢谢.

解决方法

我不记得曾经看过一个完全详细的教程,解释如何使用Zend Framework获取上传进度条;但是这里有一些指示,如果你已经知道关于 PHP,文件上传和Zend Framework的东西,那么应该引导一点……

首先,您需要安装以下两个PHP扩展中的一个

> APC
>或uploadprogress

这意味着只有当您是服务器管理员时才能获得这种进度条(认情况下通常不会安装这类扩展 – 而不是共享主机)

然后,您必须在上传表单中使用一些特殊的“隐藏”字段;关于那个,你可以看看configuration options of APC;特别是与Rfc 1867相关的那些.

如果您使用的是Zend Framework,我想您已经在表单中使用了一些Zend_Form_Element_File.它应该已经对这些领域做了必要的事情 – 你最好检查一下,确定,顺便说一句.

现在您的表单没问题,您最终可以查看Zend_ProgressBar,以及描述Progress for file uploads的文档章节

您的代码可能看起来有点像这样(引用文档):

$adapter = new Zend_PRogressBar_Adapter_Console();
$upload  = Zend_File_transfer_Adapter_Http::getProgress($adapter);

$upload = null;
while (!$upload['done']) {
    $upload = Zend_File_Transfer_Adapter_Http:getProgress($upload);
}

而且,要定期获取该信息,您必须使用某种Ajax请求从网页进行一些轮询.

关于uploadprogress扩展,您可以查看以下文章

> Upload Progress Meter – Common issues and some answers – 它可能会给你一些指示.
> AJAX File upload ProgressPHP AJAX File Upload Progress Meter Updates
> Upload Progress Meter extension for PHP 5.2

这些帖子并不专门针对Zend Framework,但可能会让您知道发生了什么;-)

顺便说一下,你可能想要在本地机器上测试所有这些,这更容易开发……这意味着文件上传真的很快;测试任何类型的进度上传指标都不太好…

关于这一点,您可能会对“减慢”本地网络接口感兴趣;那些可能有帮助:

> Network tools that simulate slow network connection
> Firefox plugin to simulate slow internet connection?

希望这有助于至少一点;-)

而且,当你在它的时候:你为什么不把你的发现写成某种好的和详细的教程?这可能对某些人有用;-)

脚本宝典总结

以上是脚本宝典为你收集整理的php – 使用Zend实现文件上载进度全部内容,希望文章能够帮你解决php – 使用Zend实现文件上载进度所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。