Php solves Chinese garbled characters when generating QR codes

Source: Internet
Author: User
Tags vcard
This article mainly introduces the solutions for Chinese garbled characters when php generates a QR code, analyzes in detail the methods for generating a QR code by php, and the solutions for garbled characters, has some reference value and needs of friends

This article mainly introduces the solutions for Chinese garbled characters when php generates a QR code, analyzes in detail the methods for generating a QR code by php, and the solutions for garbled characters, has some reference value and needs of friends

This example describes how to solve Chinese garbled characters when php generates a QR code. Share it with you for your reference. The specific analysis is as follows:

Recently, I had a project to scan the QR code to get the vcard. I encountered a problem. Some of the generated QR codes were garbled in the Chinese names in the vcard obtained after scanning with the android mobile phone, after comparison, we found that there is no content in the ORG type in this part of vcard, and a fixed string is added when no content is determined, so that the garbled problem can be solved.

Php QR code generation methods

1. Open the api on google with the following code:

The Code is as follows:

$ UrlToEncode = "http://www.jb51.net ";
GenerateQRfromGoogle ($ urlToEncode );
Function generateQRfromGoogle ($ chlorophyll, $ widhtHeight = '000000', $ EC_level = 'l', $ margin = '0 ')
{
$ Url = urlencode ($ url );
Echo '';
}


2. php QR Code library

Address:

Download:

The Code is as follows:

# Create a QR code file

The Code is as follows:

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

# Generating images to the browser

The Code is as follows:

QRcode: png ('some othertext 1234 ');

3. libqrencode

Address:

4. QRcode Perl CGI & PHP scripts

Address:

Add a logo in the middle of the QR code in the 2nd methods and modify the png method in the QRimage class in phpqrcode. php. The Code is as follows:

The Code is as follows:

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 );
}

I hope this article will help you with PHP programming.

,

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.