4.12 QRcode PERL & PHP scripts动态生成QR代码
QR(Quick Response)条码是二维的条形码。具有比一维条形承载更多的信息的优点,同时有能被手机识别的优势,现在迅速地普及开来了。大家可以在很多的户外广告上看到QR条码,只用手机的照相功能,就能读取QR条码,方便用户链接到相关网站。
现在还有很多人,在自己的名片上印刷上了QR条码。只要用手机对着QR条码照一下,就可以将名片所有者的电话号码、电子邮箱等信息登录到手机里,省去了手动输入的麻烦。
本节将介绍使用PHP脚本生成QR条码的应用,你可以在自己的网页上使用上QR条码了。
本例要点
本节使用QRcode PERL & PHP scripts(下面简称为QRcode)程序库来实现QR条码的生成。QRcode与其说是个程序库,不如说是完整的应用程序。只要以Query信息的形式传入参数,QRcode程序就能自动生成QR条码。
具体的能向QRcode程序里传入的参数,参见表4-9。
表4-9 能向QRcode程序里传入的参数
目录结构
本例代码
生成按钮按下后,13行到19行完成QR条码的生成。
以联想数组的形式定义生成QR条码时需要的参数。事先对d参数的对象变换字符串进行字符代码的转换(这里能保证正确的生成QR代码,但是是否能正确地读出相关文字,与读取方的环境有关系)。
调用http_build_query函数对联想数组进行Query信息的转换(http_build_query函数内部会默认对参数进行encode变换的)。
最后,将Query信息传递给qr_img.php程序,在<img>中显示QR条码。
补充
注意事项
本节使用的QRcode是外部库。使用时,需要下载必要的库,并进行相关设定。
QRcode的代码已经收录在随书附的光盘中了,QRcode不断地在进行版本升级,请注意保持最新的版本。
GD2库的有效化
JpGraph库内部使用了GD2程序库。因此在使用JpGraph时,必须事先让GD2有效。如果你按照第1章介绍的步骤进行环境配置的话,那么GD2已经有效了,不需要额外的特别的步骤。
下载/配置QRcode
从http://www.swetake.com/qr/qr_cgi.html网址下载最新的QRcode代码。
解压缩下载的qr_imgX.XX.tar.gz(X.XX为版本号)后,将目录下的“qr_imgX.XX”文件夹改名为“qr_img”,并复制到执行脚本qr.php相同的目录下。
PEAR::Image_Barcode——生成一维条形码
这里只介绍了二维的条形码——QR条码,而没有提及一维条形码,其实一维条形码在很多的地方还是在广泛地应用着。在PHP中,可以很方便地利用PEAR::Image_Barcode来生成一维条形码。
首先用Pear命令来进行相关库的安装。
然后,用下面的程序就可以生成出一维条形码。
生成结果如图4-4所示。
图4-4 一维条码生成结果
Image_Barcode::draw方法的参数,依次为“变换对象字符串”“文字代码(code128/code39/ean13)等”“输出图片形式(png/jpg/gif)”。
共有条评论 网友评论