关键词搜索

源码搜索 ×
×

微信小程序如何将二进制的数据流转为PNG图片

发布2020-08-01浏览4384次

详情内容

最近在做带参数的小程序二维码,遇到了问题,官网文档没有特殊说明,自己总计方法如下:

  public function getQrcode(){
        $userId = $this->request->param('user_id');
        $member_app_id = $this->request->param('appid');
        $token = $this->getToken($member_app_id);
        $url = "https://api.weixin.qq.com/wxa/getwxacode?access_token=".$token;
        $data = [
            'path' =>"pages/network/network?userId=".$userId,
            'scene'=>'1001',
            'width'=>430,
            'auto_color'=>false,
        ];
        $data=json_encode($data);
        $res = $this->request($url,$data);
        $data='image/png;base64,'.base64_encode($res);
 
        $imageName = rand(1111,9999).'.png';
        if (strstr($data,",")){
            $image = explode(',',$data);
            $image = $image[1];
        }
 
        $path = "./attachs/uploads/".date("Ymd",time());
        if (!is_dir($path)){ //判断目录是否存在 不存在就创建
            mkdir($path,0777,true);
        }
        $imageSrc=  $path."/". $imageName;  //图片名字
 
        $r = file_put_contents(ROOT_PATH .$imageSrc, base64_decode($image));//返回的是字节数
        if (!$r) {
            return json(['data'=>null,"code"=>1,"msg"=>"图片生成失败"]);
        }else{
            return json(['data'=>1,"code"=>0,"msg"=>"图片生成成功"]);
        }
        $this->result($data,200,'获取二维码成功','json');
    }

    相关技术文章

    点击QQ咨询
    开通会员
    返回顶部
    ×
    微信扫码支付
    微信扫码支付
    确定支付下载
    请使用微信描二维码支付
    ×

    提示信息

    ×

    选择支付方式

    • 微信支付
    • 支付宝付款
    确定支付下载