源代碼有一個BUG,致使二維碼不能同時保存並輸出,大體在3093行,源代碼爲php
public static function png($text, $outfile = false, $level = QR_ECLEVEL_L, $size = 3, $margin = 4, $saveandprint=false)
{
$enc = QRencode::factory($level, $size, $margin);
return $enc->encodePNG($text, $outfile, $saveandprint=false);
}函數
這裏$saveandprint已經被png函數給予默認值了,這裏傳值時候再給默認值會致使它永遠接受的值是false,因此要去掉=false才行.url
<?php include 'phpqrcode.php'; $url = 'http://www.baidu.com/'; $error_level = 'L'; $size = 10; /* 其中參數$text表示生成二位的的信息文本;參數$outfile表示是否輸出二維碼圖片 文件,默認否;參數$level表示容錯率,也就是有被覆蓋的區域還能識別,分別是 L(QR_ECLEVEL_L,7%),M(QR_ECLEVEL_M,15%),Q(QR_ECLEVEL_Q,25%),H(QR_ECLEVEL_H,30%); 參數$size表示生成圖片大小,默認是3;參數$margin表示二維碼周圍邊框空白區域間距值;參數$saveandprint表示是否保存二維碼並顯示。 png($text, $outfile = false, $level = QR_ECLEVEL_L, $size = 3, $margin = 4, $saveandprint=false) */ /** *phpqrecode輸出二維碼圖片 *@text 就是上面代碼裏的URL網址參數, *@outfile 默認爲否,不生成文件,只將二維碼圖片返回,不然須要給出存放生成二維碼圖片的路徑 *@level 默認爲L,這個參數可傳遞的值分別是L(QR_ECLEVEL_L,7%),M(QR_ECLEVEL_M,15%),Q(QR_ECLEVEL_Q,25%),H(QR_ECLEVEL_H,30%)。這個參數控制二維碼容錯率,不一樣的參數表示二維碼可被覆蓋的區域百分比。 *@size 默認爲3,控制生成圖片的大小 *@margin 默認爲4,控制生成二維碼的空白區域大小 *@saveandprint 默認爲false,保存二維碼圖片並顯示出來,$outfile必須傳遞圖片路徑。 */ QRcode::png($url,'recode.png',$error_level,$size,0,true); ?>