0

我正在尝试找到一个 PHP 函数,它可以让我确定上传图像的文件大小。即我想阻止超过一定大小的图像。

我尝试使用该getimagesize();功能,但这似乎只给出了图像的宽度和高度。

我已将 getimagesize 函数返回的数组值附在下面。除非我弄错了,否则此数组中没有任何内容与实际文件大小有关

array(6) { [0]=> int(800) [1]=> int(800) [2]=> int(3) [3]=> string(24) "width="800" height="800"" ["bits"]=> int(music) ["mime"]=> string(9) "image/png" }
4

5 回答 5

5

您被问题的“图像”部分欺骗了。您如何确定通用文件的文件大小?为什么图像会有所不同?

由于图像也是文件,因此您应该使用PHP 提供的filesize()函数

于 2013-08-02T10:21:50.577 回答
1

这应该有效:

$filename = 'somefile.txt';
echo filesize($filename) . ' bytes';
于 2013-08-02T10:20:57.493 回答
1

你可以试试这样的代码:

if($_FILES['image']['size'] <= 2097152 )
    {
    $uploaddir = $_SERVER['DOCUMENT_ROOT'].'/writereaddata/'; // destination folder



    if (move_uploaded_file($_FILES['image']['tmp_name'], $uploaddir)) {


    }
    }
于 2013-08-02T10:24:34.657 回答
0

你需要filesize()函数吗?

于 2013-08-02T10:18:33.310 回答
0

有一个简单的方法,首先,确定图像 URL,然后检查它的大小,如下所示:

$image = get_headers("full-url-to-image", 1);
$bytes = $image["Content-Length"];
echo "$bytes";

这将以字节为单位回显图像大小,例如:

length="12113"
于 2020-09-12T01:16:04.640 回答