//生成二維碼 public function qrcode() { $data = input(); if(!$data['param']){ return json(['code ' => 2, 'data' => '', 'msg' => '您有必填參數未攜帶']);exit; } if ($data['imgtype'] == 1) { //圖片類型 $imgpath = "./web/logo.png"; } elseif ($data['imgtype'] == 2) { $imgpath = "./web/icon-close.png"; } else { $imgpath = "./web/logo_cart.png"; } if ($data['param']) { $param = json_decode($data['param'], true); $crl = '?'; foreach ($param as $key => $value) { $crl .= $key . '=' . $value . '&'; } } $url = config('wapsite') . trim($crl, '&'); $name = uniqid() . '.png'; $upload_dir = ENV::get('root_path') . 'public/static/qrcode/'; if (!is_dir($upload_dir)) { mkdir($upload_dir, 0755, true); } $filedir = $upload_dir . $name; $qrCode = new QrCode($url); if ($data['type'] == 1) { //logo二維碼 $qrCode->setLogoPath($imgpath); //設置logo圖片路徑 $qrCode->setLogoWidth(60); //設置logo圖片寬度 $qrCode->setLogoHeight(60); //設置logo圖片高度 $qrCode->writeFile($filedir); } else { //普通文字二維碼 $qrCode->writeFile($filedir); } $qrsrc = request()->domain() . '/static/qrcode/' . $name; if ($qrsrc) { return json(['code ' => 1, 'data' => $qrsrc, 'msg' => '獲取數據成功']); } else { return json(['code ' => 2, 'data' => '', 'msg' => '獲取數據失敗']); } }