php生成二维码时出现中文乱码的解决方法


Posted in PHP onDecember 18, 2014

本文实例讲述了php生成二维码时出现中文乱码的解决方法。分享给大家供大家参考。具体分析如下:

最近做了个扫描二维码得到vcard的项目,遇到一个问题,有一部分生成完的二维码,用android系统手机扫描后得到的vcard中的中文姓名是乱码,经过比对发现,这部分vcard中ORG这个类型没有内容,随即判断没内容就加上一个固定的字符串,这样乱码的问题得以解决.

php生成二维码的几种方式

1.google开放api,代码如下:

$urlToEncode="https://3water.com"; 

generateQRfromGoogle($urlToEncode); 

function generateQRfromGoogle($chl,$widhtHeight ='150',$EC_level='L',$margin='0') 

{ 

$url = urlencode($url); 

echo ''; 

}

2.php类库PHP QR Code

地址:http://phpqrcode.sourceforge.net/

下载:http://sourceforge.net/projects/phpqrcode/

用例,代码如下:

# 创建一个二维码文件

QRcode::png('code data text', 'filename.png');

# 生成图片到浏览器

QRcode::png('some othertext 1234');

3.libqrencode

地址:http://fukuchi.org/works/qrencode/index.en.html

4.QRcode Perl CGI & PHP scripts

地址:http://www.swetake.com/qr/qr_cgi.html

第2种方法中在二维码中间加上logo,修改phpqrcode.php中的QRimage类里的png方法,代码如下:

public static function png($frame, $filename = false, $pixelPerPoint = 4, $outerFrame = 4, $saveandprint=FALSE, $mergePic='') 

{ 

$image = self::image($frame, $pixelPerPoint, $outerFrame); 

if($mergePic) { 

$im = imagecreatefrompng($mergePic); 

$w = imagesx($im); 

$h = imagesy($im); 

ImageAlphaBlending($image, true); 

ImageAlphaBlending($im, true); 

$qrw = (imagesx($image)-$w)/2; 

$qrh = (imagesy($image)-$h)/2; 

imagecopy($image, $im, $qrw, $qrh, 0, 0, $w, $h); 

imagedestroy($im); 

} 

if ($filename === false) { 

Header("Content-type: image/png"); 

ImagePng($image); 

} else { 

ImagePng($image, $filename); 

if($saveandprint===TRUE){ 

header("Content-type: image/png"); 

ImagePng($image); 

} 

} 

ImageDestroy($image); 

}

PS:感兴趣的朋友还可参考本站二维码工具:http://tools.3water.com/transcoding/3waterqrcode

希望本文所述对大家的PHP程序设计有所帮助。

PHP 相关文章推荐
php类
Nov 27 PHP
PHP面向对象分析设计的经验原则
Sep 20 PHP
PHP与MySQL开发的8个技巧小结
Dec 17 PHP
php更新修改excel中的内容实例代码
Feb 26 PHP
PHP中iconv函数转码时截断字符问题的解决方法
Jan 21 PHP
php使用array_search函数实现数组查找的方法
Jun 12 PHP
深入讲解PHP的Yii框架中的属性(Property)
Mar 18 PHP
Zend Framework连接Mysql数据库实例分析
Mar 19 PHP
PHP7多线程搭建教程
Apr 21 PHP
PHP二维数组实现去除重复项的方法【保留各个键值】
Dec 21 PHP
详解php与ethereum客户端交互
Apr 28 PHP
PHP fopen函数用法实例讲解
Feb 15 PHP
php判断文件上传类型及过滤不安全数据的方法
Dec 17 #PHP
php可生成缩略图的文件上传类实例
Dec 17 #PHP
php提示Failed to write session data错误的解决方法
Dec 17 #PHP
php运行提示:Fatal error Allowed memory size内存不足的解决方法
Dec 17 #PHP
PHP中使用file_get_contents抓取网页中文乱码问题解决方法
Dec 17 #PHP
apache中为php 设置虚拟目录
Dec 17 #PHP
PHP提示Warning:phpinfo() has been disabled函数禁用的解决方法
Dec 17 #PHP
You might like
用PHP连接Oracle数据库
2006/10/09 PHP
PHP输出控制功能在简繁体转换中的应用
2006/10/09 PHP
php结合js实现点击超链接执行删除确认操作
2014/10/31 PHP
使用PHP实现生成HTML静态页面
2015/11/18 PHP
PhpStorm的使用教程(本地运行PHP+远程开发+快捷键)
2020/03/26 PHP
PNGHandler-借助JS让PNG图在IE下实现透明(包括背景图)
2007/08/31 Javascript
Jquery 的outerHeight方法使用介绍
2013/09/11 Javascript
基于jquery实现发送文章到手机的代码
2014/12/26 Javascript
jquery实现先淡出再折叠收起的动画效果
2015/08/07 Javascript
JS+CSS实现的经典tab选项卡效果代码
2015/09/16 Javascript
继续学习javascript闭包
2015/12/03 Javascript
1秒50万字!js实现关键词匹配
2016/08/01 Javascript
在Docker快速部署Node.js应用的详细步骤
2016/09/02 Javascript
JavaScript中Array方法你该知道的正确打开方法
2018/09/11 Javascript
angularjs下ng-repeat点击元素改变样式的实现方法
2018/09/12 Javascript
JavaScript实现页面中录音功能的方法
2019/06/04 Javascript
浅谈在vue-cli3项目中解决动态引入图片img404的问题
2020/08/04 Javascript
解决iView Table组件宽度只变大不变小的问题
2020/11/13 Javascript
Python标准库sched模块使用指南
2017/07/06 Python
Python3中的列表生成式、生成器与迭代器实例详解
2018/06/11 Python
python requests 库请求带有文件参数的接口实例
2019/01/03 Python
python五子棋游戏的设计与实现
2019/06/18 Python
python SVM 线性分类模型的实现
2019/07/19 Python
详细介绍Python进度条tqdm的使用
2019/07/31 Python
jupyter notebook中美观显示矩阵实例
2020/04/17 Python
python实现PolynomialFeatures多项式的方法
2021/01/06 Python
逼真的HTML5树叶飘落动画
2016/03/01 HTML / CSS
高级Java程序员面试题
2016/06/23 面试题
应届毕业生的个人自我鉴定
2013/10/24 职场文书
留学推荐信怎么写
2014/01/25 职场文书
党校培训自我鉴定
2014/02/01 职场文书
卖房协议书
2014/04/11 职场文书
森林防火标语
2014/06/23 职场文书
行政秘书工作自我鉴定
2014/09/15 职场文书
农村党员对照检查材料
2014/09/24 职场文书
团队拓展训练心得体会
2016/01/12 职场文书