


Summary of how to generate QR code with logo in php, summary of phplogo_PHP tutorial
Jul 12, 2016 am 08:54 AMA summary of how php generates a QR code with a logo, a summary of phplogo
1. Class libraries used
1. phpqrcode (php library)
2. qrcode.js (javascript library)
2. Use of phpqrcode
Only uses the PHP class library, that is, the generation of QR codes is operated in the background. Because you want to generate a QR code with a logo in the background, you must first upload the logo image to the server (I used webuploader for uploading)
How to use phpqrcode:
First download phpqrcode: http://phpqrcode.sourceforge.net/
Then remember to introduce the phpqrcode.php file before using it
$value = $url;//二維碼內(nèi)容 $errorCorrectionLevel = 'L';//設(shè)置容錯(cuò)級(jí)別 $matrixPointSize = $size;//生成圖片大小 QRcode::png($value, 'public_files'.DIRECTORY_SEPARATOR .'code'.DIRECTORY_SEPARATOR .'qrcode.png', $errorCorrectionLevel, $matrixPointSize, 2);//生成二維碼圖片 無logo $logo = $tar_path;//上傳至服務(wù)器的logo圖片 $QR = 'public_files'.DIRECTORY_SEPARATOR .'code'.DIRECTORY_SEPARATOR .'qrcode.png';//已經(jīng)生成的原始二維碼圖 if ($logo !== FALSE) { $QR = imagecreatefromstring(file_get_contents($QR)); $logo = imagecreatefromstring(file_get_contents($logo)); $QR_width = imagesx($QR);//二維碼圖片寬度 $QR_height = imagesy($QR);//二維碼圖片高度 $logo_width = imagesx($logo);//logo圖片寬度 $logo_height = imagesy($logo);//logo圖片高度 $logo_qr_width = $QR_width / 5; $scale = $logo_width/$logo_qr_width; $logo_qr_height = $logo_height/$scale; $from_width = ($QR_width - $logo_qr_width) / 2; imagecopyresampled($QR, $logo, $from_width, $from_width, 0, 0, $logo_qr_width, $logo_qr_height, $logo_width, $logo_height); } $name = time(); imagepng($QR, 'public_files'.DIRECTORY_SEPARATOR .'code'.DIRECTORY_SEPARATOR .$name.'.png');//輸出帶logo的二維碼圖片
3. Use of qrcode.js
Use qrcode.js to directly generate QR codes on the front end. You first need to download jquery.qrcode.js
The use of qrcode is also very simple:
var length = size*80;//設(shè)置二維碼大小 length = parseInt(length); $("#code_img").qrcode({ //code_img是一個(gè)img標(biāo)簽的id render : "canvas", //設(shè)置渲染方式,有table和canvas,使用canvas方式渲染性能相對(duì)來說比較好 text : url, //掃描二維碼后顯示的內(nèi)容,可以直接填一個(gè)網(wǎng)址,掃描二維碼后自動(dòng)跳向該鏈接 width : length, //二維碼的寬度 height : length, background : "#ffffff", //二維碼的后景色 foreground : "#000000", //二維碼的前景色 src: $('#image').attr('src') //二維碼中間的圖片 });
After introducing jquery.qrcode.js, write this js code yourself. After execution, the QR code can be displayed and processed
Mainly the logo reference format in the middle of the QR code. Generally, there are two formats for taking local images: one is the local URL, and the other is to convert the image into base64 format
At first I tried the local URL format to reference images, but found that I could only reference images in the same directory as the js file, so the local URL format was not supported, so I adopted the latter method.
Use
To upload and select a local image, and then take its base64 format
var input = document.getElementById("file_input"); if(typeof FileReader==='undefined'){ input.setAttribute('disabled','disabled'); }else{ input.addEventListener('change',readFile,false); } function readFile(){ var file = this.files[0]; if(!/image\/\w+/.test(file.type)){ alert("文件必須為圖片!"); return false; } var reader = new FileReader(); reader.readAsDataURL(file); reader.onload = function(e){ $('#image').attr('src',this.result);//image為img標(biāo)簽的id } }
Read the file as a string of Data URL strings, and read the small file directly into the page with a URL address in a special format. This special format is base64
3. Comparison between the two class libraries
Two class libraries, one operates in the background and the other operates directly in the front end.
phpqrcode generates QR codes and operates in the background, and the generated images are saved on the server. Generally, the generated QR code is saved directly to the local and then used directly. It is rare to go to the server to obtain it for a second time. Therefore, using phpqrcode will cause the images in the server to accumulate, occupying unnecessary space, and deleting them will also cost extra money. overhead. So using phpqrcode is not suitable for this QR code generation tool. Moreover, uploading images will also incur extra overhead
qrcode.js operates directly on the front-end, uploads images and saves them directly in the browser, and generates QR codes directly on the front-end without any background interference. This reduces unnecessary overhead and does not cause image corruption on the server. Stack up and take up unnecessary space.
Articles you may be interested in:
- Several ways to generate QR codes with php and their use examples
- How to create your own QR code for images with php in the middle
- Two ways to use PHP to generate QR codes (with logo images)
- Create QR codes with website LOGO in the middle through the QRCode class library under PHP
- Generate with php Solutions to Chinese garbled characters when QR codes appear
- Generate business cards, links and other QR codes based on JavaScript
- Summary of JavaScript-generated QR code pictures

Hot AI Tools

Undress AI Tool
Undress images for free

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

PHPbecamepopularforwebdevelopmentduetoitseaseoflearning,seamlessintegrationwithHTML,widespreadhostingsupport,andalargeecosystemincludingframeworkslikeLaravelandCMSplatformslikeWordPress.Itexcelsinhandlingformsubmissions,managingusersessions,interacti

TostaycurrentwithPHPdevelopmentsandbestpractices,followkeynewssourceslikePHP.netandPHPWeekly,engagewithcommunitiesonforumsandconferences,keeptoolingupdatedandgraduallyadoptnewfeatures,andreadorcontributetoopensourceprojects.First,followreliablesource

TosettherighttimezoneinPHP,usedate_default_timezone_set()functionatthestartofyourscriptwithavalididentifiersuchas'America/New_York'.1.Usedate_default_timezone_set()beforeanydate/timefunctions.2.Alternatively,configurethephp.inifilebysettingdate.timez

TovalidateuserinputinPHP,usebuilt-invalidationfunctionslikefilter_var()andfilter_input(),applyregularexpressionsforcustomformatssuchasusernamesorphonenumbers,checkdatatypesfornumericvalueslikeageorprice,setlengthlimitsandtrimwhitespacetopreventlayout

ThePhpfunctionSerialize () andunserialize () AreusedtoconvertcomplexdaTastructdestoresintostoraSandaBackagain.1.Serialize () c OnvertsdatalikecarraysorobjectsraystringcontainingTypeandstructureinformation.2.unserialize () Reconstruct theoriginalatataprom

You can embed PHP code into HTML files, but make sure that the file has an extension of .php so that the server can parse it correctly. Use standard tags to wrap PHP code, insert dynamic content anywhere in HTML. In addition, you can switch PHP and HTML multiple times in the same file to realize dynamic functions such as conditional rendering. Be sure to pay attention to the server configuration and syntax correctness to avoid problems caused by short labels, quotation mark errors or omitted end labels.

The key to writing clean and easy-to-maintain PHP code lies in clear naming, following standards, reasonable structure, making good use of comments and testability. 1. Use clear variables, functions and class names, such as $userData and calculateTotalPrice(); 2. Follow the PSR-12 standard unified code style; 3. Split the code structure according to responsibilities, and organize it using MVC or Laravel-style catalogs; 4. Avoid noodles-style code and split the logic into small functions with a single responsibility; 5. Add comments at key points and write interface documents to clarify parameters, return values ??and exceptions; 6. Improve testability, adopt dependency injection, reduce global state and static methods. These practices improve code quality, collaboration efficiency and post-maintenance ease.

Yes,youcanrunSQLqueriesusingPHP,andtheprocessinvolveschoosingadatabaseextension,connectingtothedatabase,executingqueriessafely,andclosingconnectionswhendone.Todothis,firstchoosebetweenMySQLiorPDO,withPDObeingmoreflexibleduetosupportingmultipledatabas
