【问题标题】:Get image height and width PHP获取图像高度和宽度 PHP
【发布时间】:2011-11-26 02:47:26
【问题描述】:

您好,我需要即时获取上传图片的高度和宽度。

这是我正在使用的 PHP 函数,但它没有返回任何宽度和高度..

你能帮帮我吗?

list($width, $height, $type, $attr) = getimagesize($_FILES["Artwork"]);
$min_width = "1000";
$min_height = "1000";
if ((($_FILES["Artwork"]["type"] == "image/gif") || ($_FILES["Artwork"]["type"] == "image/jpeg") || ($_FILES["Artwork"]["type"] == "image/jpg")
|| ($_FILES["Artwork"]["type"] == "image/pjpeg")) && ($_FILES["Artwork"]["size"] < 20000000) && ($width > $min_width) && ($height > $min_height) && ($width == $height))
  {


  if ($_FILES["Artwork"]["error"] > 0)
    {
    //echo "Return Code: " . $_FILES["Artwork"]["error"] . "<br />";


   }else{
      move_uploaded_file($_FILES["Artwork"]["tmp_name"],
      $path_image . $imageName);
      header("Location: http://pitchmystuff.co.uk/m/digidist/tracks/".$idAlbum."");
      }



   }else{
    //echo "invalid file";

    echo '<script>
    alert("There was an error uploading your coverart file. Please check the requirements and try again.'.$width.$height.'");
    document.location ="http://pitchmystuff.co.uk/m/digidist/albums/";
    </script>';


    }

【问题讨论】:

标签: php image image-size


【解决方案1】:

应该是

list($width, $height, $type, $attr) = getimagesize($_FILES["Artwork"]['tmp_name']);

http://www.php.net/manual/en/features.file-upload.post-method.php

【讨论】:

    【解决方案2】:
    <?php
    /*$size = getimagesize("http://heartbeatperformance.com.p9.hostingprod.com/customerphotos/photoes/51HDE3cnl2L.jpg");
    
    list($width, $height) = $size;
    echo "width: $width<br />height: $height";*/
    
    
    
    $testing = "http://heartbeatperformance.com.p9.hostingprod.com/customerphotos/img/logo.png";
    //echo $testing;
    list($width, $height, $type, $attr) = getimagesize($testing);
    echo "Image width " . $width;
    echo "Image height " . $height;
    
    
    
    ?>
    

    【讨论】:

      【解决方案3】:
      <?php
      
      $imagedetails = getimagesize($_FILES['Artwork']['tmp_name']);
      $width = $imagedetails[0];
      $height = $imagedetails[1];
      
      ?>
      

      【讨论】:

        【解决方案4】:

        $DOCS_NAME = $_FILES['DOCS']['name'];
        $DOCS_SIZE = getimagesize($_FILES['DOCS']['tmp_name']);
        $DOCS      = file_get_contents ($_FILES['DOCS']['tmp_name']);
        $FILE_SIZE = $_FILES["DOCS"]["size"];
        $FILE_TYPE = $_FILES["DOCS"]["type"];
        
        echo 'Width     = '.$DOCS_SIZE[0]. "<br />";
        echo 'Height    = '.$DOCS_SIZE[1]. "<br />";;  
        echo '2         = '.$DOCS_SIZE[2]. "<br />";;  
        echo '3         = '.$DOCS_SIZE[3]. "<br />";;  
        echo 'bits      = '.$DOCS_SIZE['bits']. "<br />";;
        echo 'channels  = '.$DOCS_SIZE['channels']. "<br />";;
        echo 'mime      = '.$DOCS_SIZE['mime']. "<br />";
        echo 'type      = '.$_FILES["DOCS"]["type"]. "<br />";
        echo 'size      = '.$_FILES["DOCS"]["size"]. "<br />"; 
        

        【讨论】: