一:安裝QrCode
comspoer require 2amigos/qrcode-library
二:QrCode配置
當我們安裝完QrCode之後,在Yii的配置文件中進行如下配置:
'components' => [
'qrcode' => [
'class' => '\Da\QrCode\Component\QrCodeComponent',
]
],
三:使用QrCode
1:生成二維碼
$qrcode = Yii::$app->get('qrcode'); //這裏獲取的qrcode項為你配置文件中配置的QrCode的參數
Yii::$app->response->format = Response::FORMAT_RAW;
Yii::$app->response->headers->add('Content-Type', $qrcode ->getContentType());
return $qrcode
->setText('https://2amigos.us') //設置掃碼二維碼之後的顯示信息,如果為鏈接的話,掃描二維碼跳轉至指定的鏈接
->setLabel('2amigos consulting group llc') //設置二維碼標籤
->writeString(); //輸出二維碼
根據如上代碼就可以直接在瀏覽器上顯示二維碼
如果你想要將上面的二維碼渲染到指定頁面上的話,只需要在指定頁面上使用如下代碼即可:
<img src="<?= \yii\helpers\Url::to(['qrcode']) ?>" alt=""> #\yii\helpers\Url::to(['qrcode'])表示你二維碼生成的方法地址
2:將二維碼生成並保存起來
$qrcode = Yii::$app->get('qrcode'); //這裏獲取的qrcode項為你配置文件中配置的QrCode的參數
Yii::$app->response->format = Response::FORMAT_RAW;
Yii::$app->response->headers->add('Content-Type', $qrcode ->getContentType());
$fileName = Yii::getAlias('@webroot/qrcode/') . time() . '.png';//保存的二維碼位置
return $qrcode
->setText('https://2amigos.us') //設置掃碼二維碼之後的顯示信息,如果為鏈接的話,掃描二維碼跳轉至指定的鏈接
->setLabel('2amigos consulting group llc') //設置二維碼標籤
->writeFile($fileName);//將生成的二維碼保存起來
執行上面的代碼就可以在指定目錄下生成一個我們需要的二維碼
使用qrcode的一些常用參數:
setErrorCorrectionLevel #設置容錯等級(容錯等級,分為L、M、Q、H四級) 例:setErrorCorrectionLevel(ErrorCorrectionLevelInterface::HIGH)
useLogo #在二維碼上加上logo,useLogo方法內參數為logo的地址
setLogoWidth #設置logo的寬度
setSize #設置二維碼大小