google api 生成二维码

谷歌提供了一个生成二维码的接口,通过接口我们可以生成二维码,方便又快捷。
接口地址 http://chart.apis.google.com/chart?chs=宽高值x宽高值&cht=qr&chld=等级|边距&chl=内容

参数说明:
宽高值:生成二维码尺寸,单位是像素,目前生成的二维码都是正方形的,所以两个宽高值都设置为一样的值
等级:四个等级,L-默认:可以识别已损失的7%的数据;M-可以识别已损失15%的数据;Q-可以识别已损失25%的数据;H-可以识别已损失30%的数据
边距:生成的二维码离图片边框的距离
内容:生成二维码的内容,但一定要 urlEncode

<?php
/**
 * google api 二维码生成【QRcode可以存储最多4296个字母数字类型的任意文本,具体可以查看二维码数据格式】
 * @param string $chl 二维码包含的信息,可以是数字、字符、二进制信息、汉字。不能混合数据类型,数据必须经过UTF-8 URL-encoded.如果需要传递的信息超过2K个字节,请使用POST方式
 * @param int $widhtHeight 生成二维码的尺寸设置
 * @param string $EC_level 可选纠错级别,QR码支持四个等级纠错,用来恢复丢失的、读错的、模糊的、数据。
 *                 L-默认:可以识别已损失的7%的数据
 *                 M-可以识别已损失15%的数据
 *                 Q-可以识别已损失25%的数据
 *                 H-可以识别已损失30%的数据
 * @param int $margin 生成的二维码离图片边框的距离
 */
function erweima($chl,$x ='150',$level='L',$margin='0') {
    return '<img src="http://chart.apis.google.com/chart?chs='.$x.'x'.$x.'&cht=qr&chld='.$level.'|'.$margin.'&chl='.urlencode($chl).'" />';
}

$img=erweima($str);
echo $img;

无论在什么语言中,如JS、Python、PHP都要把内容给urlencode。
JS的例子这里就不给出来了,以上PHP代码稍加改动一下,就可以实现生成二维码后保存到服务器上,就不用每次使用二维码都需要请求谷歌接口生成。

阅读更多
换一批

没有更多推荐了,返回首页