이 기사의 예에서는 PHP에서 QR 코드를 생성할 때 중국어 문자가 깨지는 문제에 대한 해결 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 구체적인 분석은 다음과 같습니다.
최근 vcard를 얻기 위해 QR 코드를 스캔하는 프로젝트를 수행했습니다. 생성된 QR 코드 중 일부가 Android 휴대폰으로 스캔되었습니다. 비교 결과. , vcard의 이 부분에 있는 ORG 유형에 내용이 없는 것으로 판단되어 내용이 없다고 판단하고 고정 문자열을 추가하여 문자 깨짐 문제를 해결할 수 있습니다.
PHP에서 QR 코드를 생성하는 여러 가지 방법
1.google open api, 코드는 다음과 같습니다
$urlToEncode="http://www.jb51.net";
generateQRfromGoogle($urlToEncode)
함수 generateQRfromGoogle($chl,$widhtHeight ='150',$EC_level='L',$margin='0')
{
$url = URL코드($url)
에코
}
2.php 클래스 라이브러리 PHP QR 코드
주소: http://phpqrcode.sourceforge.net/
다운로드: http://sourceforge.net/projects/phpqrcode/
사용 사례, 코드는 다음과 같습니다.
# QR코드 파일 생성
QRcode::png('코드 데이터 텍스트', 'filename.png ');
# 브라우저에 이미지 생성
QRcode::png('some othertext 1234');
3.libqrencode
주소: http://fukuchi.org/works/qrencode/index.en.html
4.QRcode Perl CGI 및 PHP 스크립트
주소: http://www.swetake.com/qr/qr_cgi.html
두 번째 방법은 QR코드 중간에 로고를 추가하고 phpqrcode.php의 QRimage 클래스에서 png 메소드를 수정하는 방법입니다.
공용 정적 함수 png($frame, $filename = false, $pixelPerPoint = 4, $outerFrame = 4, $saveandprint=FALSE, $mergePic='')
{
$image = self::image($frame, $pixelPerPoint, $outerFrame)
if($mergePic) {
$im = imagecreatefrompng($mergePic)
$w = 이미지x($im)
$h = 이미지($im)
ImageAlphaBlending($image, true)
ImageAlphaBlending($im, true)
$qrw = (이미지x($이미지)-$w)/2
$qrh = (imagesy($image)-$h)/2
imagecopy($이미지, $im, $qrw, $qrh, 0, 0, $w, $h)
이미지파괴($im)
}
if ($filename === false) {
Header("콘텐츠 유형: 이미지/png")
이미지Png($이미지)
} 다른 {
ImagePng($이미지, $파일이름)
if($saveandprint===TRUE){
header("콘텐츠 유형: 이미지/png")
이미지Png($이미지)
}
}
이미지파괴($이미지)
}
이 기사가 모든 사람의 PHP 프로그래밍 설계에 도움이 되기를 바랍니다.