搜 索

使用php将图片从远程保存在本地且转为base64的格式

编辑:QTOOL.NET日期:2019-09-15425

对于在php中,怎样将远程网络上的突破保存到本地然后将其转为base64格式,我们可以先自定义两个函数。
get_pic()函数与pictobase64()函数
代码如下:
 
function get_pic($picurl,$picpath)
  {
    $tplz = curl_init();
    $fp = fopen($picpath,'wb');
    curl_setopt($tplz,CURLOPT_URL,$picurl);
    curl_setopt($tplz,CURLOPT_FILE,$fp);
    curl_setopt($tplz,CURLOPT_HEADER,0);
    curl_setopt($tplz,CURLOPT_FOLLOWLOCATION,1);
    curl_setopt($tplz,CURLOPT_TIMEOUT,60);
    curl_exec($tplz);
    curl_close($tplz);
    fclose($fp);
    Return $picpath;
  }
 
function pictobase64($imagepath) 
$tbase64 = '';
    $dataimage = getimagesize($imagepath);
    $imagea = fread(fopen($imagepath, 'r'), filesize($imagepath));
    $tbase64 = 'data:' . $dataimage['mime'] . ';base64,' . chunk_split(base64_encode($imagea));
    return $tbase64;
  }
 
get_pic($picurl,$picpath)函数用来保存远程图片
它可以以二进制流的方式将制定链接的图片保存到本地上
其中参数1为远程的图片url地址,参数2为保存的本地存储目录
函数执行后可以返回保存地址.
 
pictobase64($imagepath)则可以简单的将本地的图片转为base64文字编码
其中$imagepat参数为需要转base64编码的图片路径.
运行后可以得到base64编码字符串,添加在img标签中可以显示为图片,也可以直接将图片以字符串形式存储在数据库中.

TAG标签:php
此文章由QTOOL.NET编辑
最新文章

热门标签