最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

Tp框架如何生成二维码

来源:动视网 责编:小采 时间:2020-11-02 18:27:40
文档

Tp框架如何生成二维码

Tp框架如何生成二维码: 下面由thinkphp框架教程栏目给大家介绍Tp框架生成二维码的方法,希望对需要的朋友有所帮助!基础环境系统环境:Windows10 x64PHP集成环境:phpstudyPHP依赖管理工具:Composer(一) 安装qr-code扩展composer require endroid/qr
推荐度:
导读Tp框架如何生成二维码: 下面由thinkphp框架教程栏目给大家介绍Tp框架生成二维码的方法,希望对需要的朋友有所帮助!基础环境系统环境:Windows10 x64PHP集成环境:phpstudyPHP依赖管理工具:Composer(一) 安装qr-code扩展composer require endroid/qr


下面由thinkphp框架教程栏目给大家介绍Tp框架生成二维码的方法,希望对需要的朋友有所帮助!

  • 基础环境
  • 系统环境:Windows10 x64
  • PHP集成环境:phpstudy
  • PHP依赖管理工具:Composer
  • (一) 安装qr-code扩展

    composer require endroid/qr-code

    (二)代码实现(代码亲测有效)

    <?php
    namespace appcommonservice;
    
    use JrkRandom;
    use EndroidQrCodeQrCode;
    use thinkException;
    
    class QrcodeSrvice
    {
    
     /**
     * @param $text
     * @param int $size
     * @param bool $domain
     * @return string
     * @author: Hhy <jackhhy520@qq.com>
     * @describe:生成普通二维码
     */
     public static function make_qrcode($text,$size=105,$domain=false){
     $img_name = Random::alnum(15);
     $n = date("Ym");
     $dir= app()->getRootPath()."public/qrcode/code/".$n;
     //判断目录是否存在
     if (!is_dir($dir)) {
     mkdir($dir, 0777, true);
     }
     $pathname = $dir."/" . $img_name . '.png';
     $qrCode = new QrCode();
     $qrCode->setText($text)
     ->setSize($size)
     ->setPadding(15)
     ->setErrorCorrection('high')
     ->setForegroundColor(array('r' => 0, 'g' => 0, 'b' => 0, 'a' => 0))
     ->setBackgroundColor(array('r' => 255, 'g' => 255, 'b' => 255, 'a' => 0))
     ->setImageType(QrCode::IMAGE_TYPE_PNG);
     try {
     $qrCode->save($pathname);
     $str="/qrcode/code/".$n."/". $img_name . '.png';
     if ($domain){
     return request()->domain().$str;
     }else{
     return $str;
     }
     } catch (EndroidQrCodeExceptionsImageTypeInvalidException $exception) {
     return "";
     }
     }
    
    
     /**
     * @param $text
     * @param $logo
     * @return string
     * @throws Exception
     * @author: Hhy <jackhhy520@qq.com>
     * @describe:生成带logo 的二维码
     */
     public static function QrCodeWithLogo($text,$logo,$domain=false){
     if (!file_exists($logo)){
     exception("logo地址不存在");
     }
     $img_name = Random::alnum(15);
     $n = date("Ym");
     $dir= app()->getRootPath()."public/qrcode/".$n;
     //判断目录是否存在
     if (!is_dir($dir)) {
     mkdir($dir, 0777, true);
     }
     $pathname = $dir."/" . $img_name . '.png';
     $qrCode = new QrCode();
     $qrCode->setText($text)
     ->setSize(300)
     ->setLogo($logo)
     ->setLogoSize(60)
     ->setErrorCorrection('high')
     ->setForegroundColor(array('r' => 0, 'g' => 0, 'b' => 0, 'a' => 0))
     ->setBackgroundColor(array('r' => 255, 'g' => 255, 'b' => 255, 'a' => 0))
     ->setImageType(QrCode::IMAGE_TYPE_PNG);
     $qrCode->save($pathname);
     $str="/qrcode/".$n."/". $img_name . '.png';
     if ($domain){
     return request()->domain().$str;
     }else{
     return $str;
     }
     }
    
    }

    文档

    Tp框架如何生成二维码

    Tp框架如何生成二维码: 下面由thinkphp框架教程栏目给大家介绍Tp框架生成二维码的方法,希望对需要的朋友有所帮助!基础环境系统环境:Windows10 x64PHP集成环境:phpstudyPHP依赖管理工具:Composer(一) 安装qr-code扩展composer require endroid/qr
    推荐度:
    • 热门焦点

    最新推荐

    猜你喜欢

    热门推荐

    专题
    Top