PHP生成頁面二維碼解決辦法?詳解
阿新 • • 發佈:2017-06-20
web 以及 使用 evel 即使 != sca matrix 為什麽
隨著科技的進步,二維碼應用領域越來越廣泛,今天我給大家分享下如何使用PHP生成二維碼,以及如何生成中間帶LOGO圖像的二維碼。
具體工具:
phpqrcode.php內庫;這個文件可以到網上下載,如果沒有可以加我微信 webolol 和我要下;
具體方法:
使用PHP二維碼生成類庫PHP QR Code生成二維碼:
<?php //引入phpqrcode庫文件 include(‘phpqrcode.php‘); $data = ‘http://www.baidu.com‘; //生成二維碼的數據 $filename = ‘fyz.png‘; //生成二維碼的圖片名稱 $errorCorrectionLevel= ‘L‘; //糾錯級別:L、M、Q、H $matrixPointSize = 3; //點的大小 //創建並生成二維碼 QRcode::png($data,$filename,$errorCorrectionLevel,$matrixPointSize,2); //方式一:輸出二維碼 //QRcode::png($data); //方式二:輸出二維碼 //echo "<img src=‘".$filename."‘>"; //完成到這裏就已經可以生成二維碼了 //二維碼中鑲嵌 logo $logo = ‘logo.png‘;//logo圖片 $QR = ‘fyz.png‘; 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); } //生成圖片 imagepng($QR,‘testImg.png‘); echo "<img src=‘testImg.png‘>";
由於二維碼允許有一定的容錯性,一般的二維碼即使在遮住部分但仍然能夠解碼,經常我們掃描二維碼的時候掃描到甚至不到一半時就能解碼掃描結果,這是因為生成器會將部分信息重復表示來提高其容錯度,這就是為什麽我們在二維碼中間加個LOGO圖片並不影響解碼結果的原因。
PHP生成頁面二維碼解決辦法?詳解