php(tp5) 生成二維碼


phpqrcode類庫官網下載地址:https://sourceforge.net/projects/phpqrcode/

 

1.我們先看看php是怎么生成二維碼的

  

  1.首先我們先下載一下  phpqrcode  類庫。

 

  2.下載完后解壓我們會發現  phpqrcode文件夾  里面有一堆的文件,但是我們只需要找到 phpqrcode.php 文件復制, 跟  index.php 文件放在一起即可,而 index.php 就是你生成二維碼的php代碼。

  

  3.接下來就是代碼環節了,復制以下代碼黏貼到php文件里保存執行,你就會發現,在index.php文件里面會多出一個文件夾,點開你就會發現里面就是你想要的二維碼。

  

<?php

//生成二維碼
function userimg(){
    
  //引入phpqrcode類庫文件
  require_once 'phpqrcode.php';

  $value = 'https://www.cnblogs.com/junyi-bk/';         //二維碼內容
  $errorCorrectionLevel = 'L';  //容錯級別
  $matrixPointSize = 5;      //生成圖片大小

  // 判斷是否有這個文件夾  沒有的話就創建一個
  if(!is_dir("qrcode")){
    // 創建文件加
    mkdir("qrcode");
  }

  //設置二維碼圖片名稱,以及存放的路徑
  $filename = 'qrcode/'.time().rand(10000,9999999).'.png';
  
  //使用類庫生成二維碼
  QRcode::png($value,$filename , $errorCorrectionLevel, $matrixPointSize, 2);
  
 //如果需要轉換成base64數據,解開下面這行注釋即可
 //$image_data = chunk_split(base64_encode(fread(fopen($filename, 'r'), filesize($filename))));
//二維碼路徑 return $filename; 
}

//調用生成二維碼方法 echo userimg();

 

2.上面就是純php生成二維碼的方法了,那么我們來看看用tp5是怎么生成二維碼的

 

  1.首先我們先下載一下  phpqrcode  類庫,還是一樣,需要用到phpqrcode類庫。

 

  2.取出 phpqrcode.php,然后放到 vendor文件夾里面(vendor的作用就是用來放第三方類庫)

  

  3.准備工作都做好了,接下來就是代碼環節了,只需要在控制器里面寫入並調用以下方法,即可看到你要的二維碼了

  

//二維碼
    public function UserImg(){

        vendor('phpqrcode');//引入類庫
        $value = 'https://www.cnblogs.com/junyi-bk/';         //二維碼內容
        $errorCorrectionLevel = 'L';  //容錯級別
        $matrixPointSize = 5;      //生成圖片大小
        //生成二維碼圖片
        // 判斷是否有這個文件夾  沒有的話就創建一個
        if(!is_dir("qrcode")){
            // 創建文件加
            mkdir("qrcode");
        }
        //設置二維碼文件名
        $filename = 'qrcode/'.time().rand(10000,9999999).'.png';
        //生成二維碼
        \QRcode::png($value,$filename , $errorCorrectionLevel, $matrixPointSize, 2);

//如果需要轉換成base64數據,解開下面這行注釋即可
 //$image_data = chunk_split(base64_encode(fread(fopen($filename, 'r'), filesize($filename))));
//獲取當前域名 $request = Request::instance(); $domain = $request->domain();       

return $domain.'/'.$filename;
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM