【发布时间】:2011-03-16 13:48:08
【问题描述】:
有没有办法在 PHP 中使用 HTML 表单只上传文件的标题。标头的长度在文件的前几个字节中定义,我只想要那部分。在收到标头的最后一个字节后,我不再需要该文件。有没有一种优雅的方法可以在 PHP 中执行此操作,还是我必须进行一些套接字编程?
【问题讨论】:
有没有办法在 PHP 中使用 HTML 表单只上传文件的标题。标头的长度在文件的前几个字节中定义,我只想要那部分。在收到标头的最后一个字节后,我不再需要该文件。有没有一种优雅的方法可以在 PHP 中执行此操作,还是我必须进行一些套接字编程?
【问题讨论】:
在 PHP 端,您不能优雅地中止上传(HTTP 连接)。客户端将面临“对等连接重置”错误(或网络浏览器从错误中发出的任何更友好的信息)。最好的办法是忽略读取的字节,但这在 PHP 中并不(显然?)容易,因为它是一种相当高级的语言。
在 HTML 方面,绝对没有办法只上传文件的“标题”。这是完整的文件或什么都没有。有无数种不同的文件格式,HTML 没有任何概念,更不用说知道如何区分相关文件的“标题”部分。
最好的办法是编写一个由网页提供服务并下载到客户端机器并在本地运行的小应用程序。这个应用程序应该有一个文件选择器/选择器/打开器,然后以编程方式确定“标题”并将其发送到服务器。您可以使用 Java Applet 或 MS Silverlight 或 Adobe Flash 来实现。
【讨论】: