getimagesize()不返回图像值

时间:2015-03-03 12:03:53

标签: php codeigniter

我正在尝试使用getimagesize功能。我使用Dropzone.js进行图片上传,我正在使用codeigniter。

上传功能:

public function upload() //upload multiple images-dropzone

{ 
      if (!empty($_FILES)) {
        $tempFile = $_FILES['file']['tmp_name'];

    $fileName = str_replace(' ', '_', $_FILES["file"]["name"]);
    $file_name = substr(uniqid(rand()),0,10000).'_'.$fileName ;
        $targetPath = './uploads/';
        $targetFile = $targetPath . $file_name ;
        move_uploaded_file($tempFile, $targetFile);



    $this->thumb($targetFile,$targetPath,$file_name,$tempFile);     

}}

我的拇指功能:

function thumb($targetFile,$targetPath,$file_name,$tempFile)
{
    require_once('php_image_magician.php');

    $magicianObj = new imageLib($targetFile);

    list($width, $height, $type, $attr) = getimagesize($tempFile);  

    if($width = $height)
    {
    $magicianObj->resizeImage(150,150);
    }
    else if($width > $height)
    {
    $magicianObj->resizeImage(150,40);  
    }
    else
    {
    $magicianObj->resizeImage(40,150);  
    }


    // saving file to thumb directory
    $magicianObj->saveImage($targetPath . 'thumb/' . $file_name, 100);
}

在这种情况下,我试图比较高度和宽度,但它不能正常工作。它始终是第一个条件。

1 个答案:

答案 0 :(得分:0)

您使用了move_uploaded_file,因此在找到$ tempFile之后将无法找到它,因为它已经被移动了,而是使用copy()函数。