thinkphp處理base64圖片

來源:互聯網
上載者:User
        $url = ''//網狀圖片地址;        $curl = curl_init($url);        curl_setopt($curl, CURLOPT_URL, '');        curl_setopt($curl, CURLOPT_REFERER, '');        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);        $result = curl_exec($curl);        // header('Content-type: image/JPEG');        // echo $result;        return $result;        

tp給的例子怎麼應用

$image = \think\Image::open('./image.png');// 返回圖片的寬度$width = $image->width(); // 返回圖片的高度$height = $image->height(); // 返回圖片的類型$type = $image->type(); // 返回圖片的mime類型$mime = $image->mime(); // 返回圖片的尺寸數組 0 圖片寬度 1 圖片高度$size = $image->size(); 

如何用thinkphp處理得到的$result? 比如我想改變一片的寬高 然後再上傳到伺服器上。
謝謝!

回複內容:

        $url = ''//網狀圖片地址;        $curl = curl_init($url);        curl_setopt($curl, CURLOPT_URL, '');        curl_setopt($curl, CURLOPT_REFERER, '');        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);        $result = curl_exec($curl);        // header('Content-type: image/JPEG');        // echo $result;        return $result;        

tp給的例子怎麼應用

$image = \think\Image::open('./image.png');// 返回圖片的寬度$width = $image->width(); // 返回圖片的高度$height = $image->height(); // 返回圖片的類型$type = $image->type(); // 返回圖片的mime類型$mime = $image->mime(); // 返回圖片的尺寸數組 0 圖片寬度 1 圖片高度$size = $image->size(); 

如何用thinkphp處理得到的$result? 比如我想改變一片的寬高 然後再上傳到伺服器上。
謝謝!

這個是我安裝網上原生的去封裝的,你參考一下,其實很簡單,就是把base64位解碼,然後本地儲存。
我下面這個只是產生。
至於你說的操作圖片大小,就我接觸的來講,要麼你上傳之前用js外掛程式讓使用者完上傳,要麼你本地產生之後,再用PHP去操作。伺服器要操作檔案只能操作本地檔案。

/** * 儲存64位編碼圖片 */ function saveBase64Image($base64_image_content){        if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $base64_image_content, $result)){                  //圖片尾碼                  $type = $result[2];                  //儲存位置--圖片名                  $image_name=date('His').str_pad(mt_rand(1, 99999), 5, '0', STR_PAD_LEFT).".".$type;                  $image_url = '/uploads/image/'.date('Ymd').'/'.$image_name;                             if(!is_dir(dirname('.'.$image_url))){                         mkdir(dirname('.'.$image_url));                        chmod(dirname('.'.$image_url), 0777);                        umask($oldumask);                  }                                   //解碼                  $decode=base64_decode(str_replace($result[1], '', $base64_image_content));                  if (file_put_contents('.'.$image_url, $decode)){                        $data['code']=0;                        $data['imageName']=$image_name;                        $data['url']=$image_url;                        $data['msg']='儲存成功!';                  }else{                    $data['code']=1;                    $data['imgageName']='';                    $data['url']='';                    $data['msg']='圖片儲存失敗!';                  }        }else{            $data['code']=1;            $data['imgageName']='';            $data['url']='';            $data['msg']='base64圖片格式有誤!';        }               return $data; }

臨時儲存為image.png
然後再用thinnkphp的image類去操作,搞定後再把臨時的圖片刪除。

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.