wypok
第一种:base64转换成图片路径

/**
* update_base64_url
* $base64 图片 base64
* $new_file 图片存储路径
* $new_file_name 图片存名
* return 图片名
*/
private function update_base64_url($base64,$new_file,$new_file_name=\'\'){
//匹配出图片的格式
if (preg_match(\'/^(data:\s*image\/(\w+);base64,)/\', $base64, $result)){
$type = $result[2];
// $new_file = "upload/weixin/";
if(!file_exists($new_file)){

//检查是否有该文件夹,如果没有就创建,并给予最高权限
mkdir(iconv("UTF-8", "GBK", $new_file), 0777,true);
}
//exit();
$new_file_name = !empty($new_file_name)? $new_file_name : time().rand(111111,999999);

$new_file_name = $new_file_name.".{$type}";
$new_file = $new_file.$new_file_name;
// var_dump($new_file);
// exit();

if (file_put_contents($new_file, base64_decode(str_replace($result[1], \'\', $base64)),FILE_APPEND)){
return $new_file_name;
}
return $new_file_name;
}
}

调用时:

$as = [];
foreach($pic as $v){
$imName[\'path\'] = $this->update_base64_url($v,\'upload/weixin/\');
$imName[\'id\'] = 1;
$as[] =$imName;
}


第二种:图片路径转换成base64
/**
* @param $image_file
* @return string
* 把图片样式转换成base64格式
*/

public function base64EncodeImage ($image_file) {
$base64_image = \'\';
$image_info = getimagesize(\'upload/weixin/\'.$image_file);
$image_data = fread(fopen(\'upload/weixin/\'.$image_file, \'r\'), filesize(\'upload/weixin/\'.$image_file));
$base64_image = \'data:\' . $image_info[\'mime\'] . \';base64,\' . chunk_split(base64_encode($image_data));
return $base64_image;
}
调用时:

foreach($arrInfo[\'pic\'] as $arrKey=>$arrValue){
$img = $arrInfo[\'pic\'][$arrKey][\'path\'];
$base64_img = $this->base64EncodeImage($img);
$arrInfo[\'pictures\'][] = $base64_img;
}

分类:

技术点:

相关文章: