【问题标题】:how to get image file size with php如何使用php获取图像文件大小
【发布时间】:2013-08-02 10:16:56
【问题描述】:

我正在尝试找到一个 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" }

【问题讨论】:

  • 您被问题的“图像”部分欺骗了。您如何确定通用文件的文件大小?为什么图像会有所不同?
  • 正是^。你自己说的,你需要图像的文件大小。因此,请寻找一个为您提供文件大小而不是图像大小的函数。

标签: php


【解决方案1】:

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

由于图片也是文件,所以你应该使用PHP提供的filesize()函数

【讨论】:

    【解决方案2】:

    这应该可行:

    $filename = 'somefile.txt';
    echo filesize($filename) . ' bytes';
    

    【讨论】:

      【解决方案3】:

      你可以试试这样的代码:

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

      【讨论】:

      • 这到底是什么?
      • 这是用于在上传图片时检查文件大小...以上@andreea115 想要限制用户上传特定大小以上的图片..
      • 我会改写这个问题,说在$_FILES['img_field_name']['size'] 内部存储了上传的文件大小。我会赞成,但不是当前的。
      【解决方案4】:

      你需要filesize()函数吗?

      【讨论】:

        【解决方案5】:

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

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

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

        length="12113"
        

        【讨论】:

          猜你喜欢
          • 2012-04-15
          • 1970-01-01
          • 1970-01-01
          • 2016-03-19
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多