Bootstrap

小程序如何生成自己想要的各类小程序码,现成的方法送给你

我们在微信小程序后台下载的小程序码只有一个,那么遇到各类的文章页面,还有产品页面,又或者开发的各类应用页面如何生成各自的小程序码呢,今天呢,小编直接上现成的代码,改几个参数就能用。

话不多说,代码先上:

function getCode($page,$scene,$orcname)
    {
    	$appid = 'wx**************42b';
    	$appsecret = '288d******************d54';
        $access_token = accessToken($appid, $appsecret);
        $width = 430;//二维码宽度
        $page = $page;//小程序路径(pages/index/index)
        $scene = $scene;//携带的参数(?id=1&tag=2)

        $wx_api = "https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=".$access_token;
        $data = [
            'page'      => $page,
            'scene'     => $scene,
            'width'     => $width,
        ];

        $post_data  = json_encode($data);

        $result     = api_notice_increment($wx_api, $post_data);     //获取微信小程序二维码
        if(!$result){
            return false;
        }
        $imgUrl = 'data:image/jpg;base64,'.base64_encode($result);
		//$img_base64 = base64_encode($result);
		//header("Content-type: image/jpg;charset=gb2312");
        //echo $output1;
        //echo '<img src="' . $imgUrl . '">';
        
        $url = $orcname;   // 设定不同的小程序码名称
        file_put_contents($url, $result, true);  //将生成的小程序码保存到本地
    }

	function accessToken($APP_ID, $SECRET)
    {
        $token_access_url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" . $APP_ID . "&secret=" . $SECRET;
        $res = file_get_contents($token_access_url);
        $result = json_decode($res, true);
        $access_token = $result['access_token'];
        return $access_token;
    }

	function api_notice_increment($url, $data)
	{
        $ch = curl_init();
        $header = array("Accept-Charset: utf-8");
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
        curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
        curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)');
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
        curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        $tmpInfo = curl_exec($ch);
        if (curl_errno($ch)) {
            return false;
        }else{
            // var_dump($tmpInfo);
            return $tmpInfo;
        }
    }

放完方法代码,可不能少了对如何使用的讲解,下面小编就来讲讲如何调用:

代码如何使用

$page='pagesExt/mingpian/zhiweizhanshi';
$scene='id_'.$row['id'];
$orcname='yonggong'.$row['id'].'.jpg';
getCode($page,$scene,$orcname);

getCode( p a g e , page, page,scene,$orcname);
要传三个参数:
$page=‘pagesExt/mingpian/zhiweizhanshi’;
$page就是访问的具体小程序页面
KaTeX parse error: Expected group after '_' at position 10: scene='id_̲'.row[‘id’];
$scene为传递的参数,这里根据具体规则,可以是id=什么,小编这边小程序这边接受代码中是以“_”来区分的,这块各位使用的时候要注意,根据自己写的解析函数来定。
o r c n a m e = ′ y o n g g o n g ′ . orcname='yonggong'. orcname=yonggong.row[‘id’].‘.jpg’;
o r c n a m e 这个就是生成图片的名称,如果生成的多,一定要区分出来,一般规则,前面 y o n g g o n g 是区分不同功能的前缀,后面 orcname这个就是生成图片的名称,如果生成的多,一定要区分出来,一般规则,前面yonggong是区分不同功能的前缀,后面 orcname这个就是生成图片的名称,如果生成的多,一定要区分出来,一般规则,前面yonggong是区分不同功能的前缀,后面row[‘id’]也就是在不同应用中数据库调用的id号,这样就能区分开了

最终效果

在这里插入图片描述
最终实现就可以做到每条记录一个自己的小程序码了,特别是放在PC端,或者写公众号中都可以嵌入,方便用户直接到小程序中的具体页面。
好了,今天就说到这里,大家有什么问题可以留言。

;