本文主要和大家分享PHP產生帶有logo圖像二維碼的兩種方法,主要以文字和程式碼的形式和大家分享,希望能幫助大家。
一、利用Google API生成二維碼
Google提供了較為完善的二維碼生成接口,調用API接口很簡單,以下是調用代碼:
$urlToEncode="http://www.php.cn"; generateQRfromGoogle($urlToEncode); /** * google api 二维码生成【QRcode可以存储最多4296个字母数字类型的任意文本,具体可以查看二维码数据格式】 * @param string $chl 二维码包含的信息,可以是数字、字符、二进制信息、汉字。 不能混合数据类型,数据必须经过UTF-8 URL-encoded * @param int $widhtHeight 生成二维码的尺寸设置 * @param string $EC_level 可选纠错级别,QR码支持四个等级纠错,用来恢复丢失的、读错的、模糊的、数据。 * L-默认:可以识别已损失的7%的数据 * M-可以识别已损失15%的数据 * Q-可以识别已损失25%的数据 * H-可以识别已损失30%的数据 * @param int $margin 生成的二维码离图片边框的距离 */ function generateQRfromGoogle($chl,$widhtHeight ='150',$EC_level='L',$margin='0') { $chl = urlencode($chl); echo '<img src="http://chart.apis.google.com/chart?chs='.$widhtHeight.'x'.$widhtHeight.' &cht=qr&chld='.$EC_level.'|'.$margin.'&chl='.$chl.'" alt="QR code" widhtHeight="'.$widhtHeight.' " widhtHeight="'.$widhtHeight.'"/>'; }
二、使用PHP二維碼產生類別庫PHP QR Code產生二維碼
PHP QR Code是一個PHP二維碼產生類別庫,利用它可以輕鬆產生二維碼,官網提供了下載和多個示範demo,查看網址:http://phpqrcode.sourceforge.net/。
下載官網提供的類別庫後,只需要使用phpqrcode.php就可以產生二維碼了,當然您的PHP環境必須開啟支援GD2。 phpqrcode.php提供了一個關鍵的png()方法,其中參數text表示生成二位的信息文本;參數text表示生成二位的信息文本;參數outfile表示是否輸出二維碼圖片文件,預設否;參數level表示容錯率,也就是有被覆蓋的區域還能識別,分別是L(QRECLEVELL,7level表示容錯率,也就是有被覆蓋的區域還能識別,分別是L(QRECLEVELL,7size表示生成圖片大小,預設為3;參數margin表示二維碼周圍邊框空白區域間距值;參數margin表示二維碼周圍邊框空白區域間距值;參數saveandprint表示是否儲存二維碼並顯示。 PHP QR Code非常簡單,如下程式碼即可產生一張內容為"http://www.jb51.net"的二維碼.
include 'phpqrcode.php';
QRcode ::png('http://www.jb51.net');
那麼實際應用中,我們會在二維碼的中間加上自己的LOGO,已增強宣傳效果。含有logo的二維碼呢?中間,然後重新產生一張新的二維碼圖片。
由於二維碼允許有一定的容錯性,一般的二維碼即使在遮住部分但仍然能夠解碼,經常我們掃描二維碼的時候掃描到甚至不到一半時就能解碼掃描結果,這是因為生成器會將部分資訊重複表示來提高其容錯度,這就是為什麼我們在二維碼中間加個LOGO圖片並不影響解碼結果的原因。
以上是PHP產生具有logo圖像二維碼的兩種方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!