php 是否提供 api 来检查 multipart/form-data 上传速率或总持续时间?
我还想知道 PHP 如何知道 IIS 和 php.ini 设置中的各种超时事件?
$_SERVER 中有一个值,您可以检查以了解何时发起请求。来自 PHP 手册:
'REQUEST_TIME' 请求开始的时间戳。自 PHP 5.1.0 起可用。自 PHP 5.4.0 以来,它以微秒为单位浮动。
因此,您可以将 $_SERVER ['REQUEST_TIME'] 与当前 time() 进行比较,条件是在 PHP 5.4 普及之前,您的分辨率限制为 1 秒。
我不这么认为 - 上传在 PHP 可以对其执行任何操作时完成,即 apache 获取上传,然后完成后将其交给 PHP - 您的脚本甚至不会在此之前运行,所以除非有一种追溯获取此信息的方法我认为您无法仅从 PHP 中获取它。
获取此数据的常用方法是在客户端使用 flash 或 javascript 或两者兼而有之。例如,uploadify 或 swfupload 都是很棒的 flash 上传器,它们为用户提供客户端文件大小限制和上传进度指示。
如果文件上传、进度指示和文件大小限制可以由浏览器本身完成,那就容易多了:(
参考:
对于第一个问题,我相信您可以使用$_SERVER['REQUEST_TIME']变量自己进行计算,以及time()
.