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 相关文章推荐
教你如何把一篇文章按要求分段
Oct 09 PHP
使用数据库保存session的方法
Oct 09 PHP
提高define性能的php扩展hidef的安装和使用
Jun 14 PHP
安装apache2.2.22配置php5.4(具体操作步骤)
Jun 26 PHP
php去掉文件前几行的方法
Jul 29 PHP
修改PHP脚本使WordPress拦截垃圾评论的方法示例
Dec 10 PHP
使用WordPress发送电子邮件的相关PHP函数用法解析
Dec 15 PHP
PHP使用函数用法详解
Sep 30 PHP
PHP中抽象类,接口功能、定义方法示例
Feb 26 PHP
PHP SESSION机制的理解与实例
Mar 22 PHP
php创建类并调用的实例方法
Sep 25 PHP
Yii框架where查询用法实例分析
Oct 22 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&mysql(四)
2006/10/09 PHP
解析PHP的session过期设置
2013/06/29 PHP
php实现文件下载实例分享
2014/06/02 PHP
PHP面向对象程序设计OOP继承用法入门示例
2016/12/27 PHP
PHP性能分析工具xhprof的安装使用与注意事项
2017/12/19 PHP
javascript中字符串的定义示例代码
2013/12/19 Javascript
javascript:window.open弹出窗口的位置问题
2014/03/18 Javascript
js实现屏幕自适应局部代码分享
2015/01/30 Javascript
jquery控制页面部分刷新的方法
2015/06/24 Javascript
JS实现超精简的链接列表在固定区域内滚动效果代码
2015/11/04 Javascript
jQuery+CSS实现一个侧滑导航菜单代码
2016/05/09 Javascript
JQuery在循环中绑定事件的问题详解
2016/06/02 Javascript
Bootstrap源码解读标签、徽章、缩略图和警示框(8)
2016/12/26 Javascript
angular实现页面打印局部功能的思考与方法
2018/04/13 Javascript
vue 实现用户登录方式的切换功能
2020/04/14 Javascript
前端vue+elementUI如何实现记住密码功能
2020/09/20 Javascript
JS操作JSON常用方法(10w阅读)
2020/12/06 Javascript
python中MySQLdb模块用法实例
2014/11/10 Python
python实现根据用户输入从电影网站获取影片信息的方法
2015/04/07 Python
Python 功能和特点(新手必学)
2015/12/30 Python
Python单链表简单实现代码
2016/04/27 Python
深度定制Python的Flask框架开发环境的一些技巧总结
2016/07/12 Python
使用Python的turtle模块画图的方法
2017/11/15 Python
opencv转换颜色空间更改图片背景
2019/08/20 Python
python让函数不返回结果的方法
2020/06/22 Python
英国复古皮包品牌:Beara Beara
2018/07/18 全球购物
创业计划书中包含的9个方面
2013/12/26 职场文书
社区党建工作汇报材料
2014/10/27 职场文书
烟台的海导游词
2015/02/02 职场文书
家长对孩子的寄语
2015/02/26 职场文书
2016新年年会主持词
2015/07/06 职场文书
2016年领导干部廉政承诺书
2016/03/24 职场文书
python 三边测量定位的实现代码
2021/04/22 Python
详解Java ES多节点任务的高效分发与收集实现
2021/06/30 Java/Android
俄罗斯十大城市人口排名,第三首都仅排第六,第二是北方首都
2022/03/20 杂记
vue中使用mockjs配置和使用方式
2022/04/06 Vue.js