使用$ _FILES超全局

时间:2013-01-10 16:57:40

标签: php file superglobals

我想使用$_FILES['name']['size']来查看上传文件的大小是否大于1MB。我怎样才能做到这一点?我在if语句中使用了什么尺寸?

喜欢这个?:

if ( $_FILES['name']['size'] >= 1Mb) {
    // do this;
}

4 个答案:

答案 0 :(得分:3)

不,因为那是一个字符串,大小是以字节为单位的整数。

鉴于1Mb是1000Kb是1,000,000b,这将起作用:

if ( $_FILES['name']['size'] >= 1 * 1000 * 1000)

我假设您的意思是MB,因为文件以字节(B)而不是位(b)表示。在这种情况下,请使用1024而不是1000(1MB = 1024KB.1KB = 1024B)。

答案 1 :(得分:2)

大小以字节表示。 1 MB是1024 * 1024字节。

if ( $_FILES['name']['size'] >= 1024 * 1024) {
    // do this;
}

答案 2 :(得分:0)

大小值以字节为单位。所以1MB是1048576

MB -> byte

PHP $_FILES superglobal array info

答案 3 :(得分:-1)

来自the manual

  

$_FILES['userfile']['size']

     

上传文件的大小以字节为单位

1MB是(1024 * 1024)字节(或1048576B),所以:

if ($_FILES['name']['size'] >= 1024*1024) {
    // do this;
}

请使用文档。