因爲團隊功能須要,咱們須要用php作一個能根據咱們的給出的URL生成二維碼的action,過程曲折,作出來以後在這裏總結一下。php
開始的時候,走了錯誤的方向,當時的想法:既然要生成二維碼,那就要知道二維碼的生成機制,因而我在網上搜二維碼,獲得了以下結果:html
我粗略讀了一遍以後頓悟: 顯然,這不是我想要的(若是研究這東西,估計將來幾周不用幹別的了)
我雖然走錯了方向,可是也簡單的瞭解了二維碼這個東西,那麼咱們須要的功能該如何實現呢?此次我決定簡單粗暴一點
谷歌誠不欺我,在我以前已經有人寫好了這些個功能,因而我開始步入正軌。git
筆者發現了兩種辦法,最後使用了第二種github
這是我在網上找到的照片(源自菜鳥教程:composer安裝),我安裝的時候,並無地址出現,因而我就懵了,這是什麼意思?web
思考了一下,咱們安裝的這個管理工具是和php聯繫的,而且須要找到菜鳥教程圖片當中的php.exe文件,因而引出了下面的問題:php在哪裏?thinkphp
百度百科:XAMPP(Apache+MySQL+PHP+PERL)是一個功能強大的建站集成軟件包。由此可知,咱們使用的xampp裏面集成了php,下一步,開始找文件segmentfault
找到文件,安裝完成,在咱們的thinphp5文件夾下,輸入指令來安裝好第三方庫 $ composer require endroid/qr-code
這樣,咱們的庫文件就加載完畢,進行代碼開發的話,你們能夠參考這篇博客windows
http://www.cnbreak.org/biancheng/thinkphp5/wechatwebpage/760.html網絡
筆者用的是這個方法,用起來也相對簡單(不過在thinkphp6貌似沒辦法使用了),咱們在網上直接下載第三方庫composer
下載連接https://sourceforge.net/projects/phpqrcode/files/releases
官方說明文檔 http://phpqrcode.sourceforge.net/docs/html/annotated.html
下載完畢後
注意:必定要是extends目錄
咱們用composer下載好的庫在vender裏面,而外面下載的第三方庫只有放在extends裏面纔會起做用。
以下是第二種方法的代碼
function qrcode($level = 'L', $size = 4){ // 導入Phpqrcode插件文件require_once EXTEND_PATH.'phpqrcode/phpqrcode.php'; //設置url $url1 = 'https://www.baidu.com/s?wd=666&rsv_spt=1&rsv_iqid=0xfea0cab90000241d&issp=1&f=8&rsv_bp=1&rsv_idx=2&ie=utf-8&tn=baiduhome_pg&rsv_enter=1&rsv_dl=ib&rsv_sug3=4&rsv_sug1=3&rsv_sug7=100&rsv_sug2=0&rsv_btype=i&inputT=528&rsv_sug4=1203'; // 容錯級別 $errorCorrectionLevel = $level; // 生成圖片大小 $matrixPointSize = intval($size); // 生成二維碼圖片 $object = new QRcode(); // 這個必定要加上,清除緩衝區 ob_end_clean(); // 第二個參數false的意思是不生成圖片文件,若是你寫上‘picture.png’則會在根目錄下生成一個png格式的圖片文件 $object->png($url1, false, $errorCorrectionLevel, $matrixPointSize, 2); }
相關參數的意思:
png($text, $outfile = false, $level = QR_ECLEVEL_L, $size = 4, $margin = 4, $saveandprint=false, $back_color = 0xFFFFFF, $fore_color = 0x000000)
咱們想要實現一個功能的時候,通常來講在咱們以前都會有人已經寫出這個東西來了,首先本身去研究這個功能的實現思路,而後去想辦法,找到相關的文檔方法,就能夠實現功能了。
http://www.517php.com/tp/46.html
http://www.cnbreak.org/bianch...
本文保留全部權利,版權歸河北工業大學夢雲智軟件開發團隊全部。未經團隊及做者事先書面贊成,您不得以任何方式將本文內容進行商業性使用或經過信息網絡傳播本文內容。本文做者:溫宇航