您好,登錄后才能下訂單哦!
這篇文章主要介紹“使用php生成二維碼的方法”,在日常操作中,相信很多人在使用php生成二維碼的方法問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”使用php生成二維碼的方法”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
本文介紹兩種使用 php 生成二維碼的方法。
(1)利用google生成二維碼的開放接口,代碼如下:
/** * google api 二維碼生成【QRcode可以存儲最多4296個字母數字類型的任意文本,具體可以查看二維碼數據格式】 * @param string $data 二維碼包含的信息,可以是數字、字符、二進制信息、漢字。不能混合數據類型,數據必須經過UTF-8 URL-encoded.如果需要傳遞的信息超過2K個字節,請使用POST方式 * @param int $widhtHeight 生成二維碼的尺寸設置 * @param string $EC_level 可選糾錯級別,QR碼支持四個等級糾錯,用來恢復丟失的、讀錯的、模糊的、數據。 * L-默認:可以識別已損失的7%的數據 * M-可以識別已損失15%的數據 * Q-可以識別已損失25%的數據 * H-可以識別已損失30%的數據 * @param int $margin 生成的二維碼離圖片邊框的距離 */ function generateQRfromGoogle($data,$widhtHeight='150',$EC_level='L',$margin='0'){ $url=urlencode($data); echo '<img src="http://chart.apis.google.com/chart?chs='.$widhtHeight.'x'.$widhtHeight.'&cht=qr&chld='.$EC_level.'|'.$margin.'&chl='.$data.'" widhtHeight="'.$widhtHeight.'" widhtHeight="'.$widhtHeight.'"/>'; }
使用方法:
$data='版權所有:https://www.jb51.net'; generateQRfromGoogle($data);
post方法實現請求google api 生成二維碼的方式:
function qrcode($width,$height,$string){ $post_data=array(); $post_data['cht']='qr'; $post_data['chs']=$width."x".$height; $post_data['chl']=$string; $post_data['choe']="UTF-8"; $url="http://chart.apis.google.com/chart"; $data_Array=array(); foreach($post_data as $key=>$value){ $data_Array[]=$key.'='.$value; } $data=implode("&",$data_Array); $ch=curl_init(); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POSTFIELDS,$data); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $result=curl_exec($ch); //echo "<img src =\"data:image/png;base64,".base64_encode($result)."\" >"; 注意,不寫header的寫法 return $result; }
使用方法:
header("Content-type:image/png"); $width=300; $height=300; $data='版權所有:https://www.jb51.net'; echo qrcode($width,$height,$data);
當然生成的圖片同上面是一樣的。
(2)使用php QR Code類庫生成二維碼
注意使用該類庫必須首先下載類庫包,下載地址:
地址:http://phpqrcode.sourceforge.net/
下載下來的壓縮包里面有很多示例,可以自行研究,下面給出一個簡單的使用案例(具體參數的意思和上面大同小異):
<?php include "./phpqrcode.php"; $data='版權所有:https://www.jb51.net'; $errorCorrectionLevel="L"; $matrixPointSize="4"; QRcode::png($data,false,$errorCorrectionLevel,$matrixPointSize);
到此,關于“使用php生成二維碼的方法”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。