thinkphp5 + barcode 生成条形码的方法

1、去官网下载类库 “https://www.barcodebakery.com/en/download”,选择自己的版本下载

9d180cfbcac078f49065314823f6819.png

 推荐教程:thinkphp教程

2、解压放到“E:phpstudyPHPTutorialWWWguahaovendor下”,其中class文件是所有的类文件,生成条形码就是调用文件夹里的类,font文件是字体,index.php是一个可选择条件生成条形码的功能,是主程序的入口,test_1D.php是给的生成条形码的例子,test_1D.html是对应的渲染条形码的页面

33e92f0b17fb76e5be1d5f5a7728db8.png

立即学习“PHP免费学习笔记(深入)”;

3、我们可以直接使用官方给的例子(test_1D.php),复制到自己需要用的地方,然后根据自己的需求稍加改动即可,需要注意的是,加载第三方类库的路径需要改一下。

生成条形码的php代码

setScale(2); // Resolution            $code->setThickness(30); // Thickness            $code->setForegroundColor($color_black); // Color of bars            $code->setBackgroundColor($color_white); // Color of spaces            $code->setFont($font); // Font (or 0)  0不显示文字         $text = isset($_GET['text']) ? $_GET['text'] : 'HELLO';            $code->parse($text); // Text        } catch(Exception $exception) {            $drawException = $exception;        }        /* Here is the list of the arguments        1 - Filename (empty : display on screen)        2 - Background color */        $drawing = new BCGDrawing('', $color_white);        if($drawException) {            $drawing->drawException($drawException);        } else {            $drawing->setBarcode($code);            $drawing->draw();        }        // Header that says it is an image (remove it if you save the barcode to a file)        header('Content-Type: image/png');        header('Content-Disposition: inline; filename="barcode.png"');        // Draw (or save) the image into PNG format.        $drawing->finish(BCGDrawing::IMG_FORMAT_PNG);    }    public function barcodedes()    {        return $this->fetch();    }}?>

接受渲染条形码的Html代码

thinkphp5 + barcode 生成条形码的方法

 

1f3f3982e09e64dabf49a522e997e3c.png

AI卡通生成器 AI卡通生成器

免费在线AI卡通图片生成器 | 一键将图片或文本转换成精美卡通形象

AI卡通生成器 51 查看详情 AI卡通生成器

当然,src还可以携带参数,只需更改以下代码

html代码

'123'))}">

php代码

$text = isset($_GET['text']) ? $_GET['text'] : 'HELLO';

改成

$text = input('text');      //接收的参数

4、如果想把条形码保存到本地,在实例化“BCGDrawing”的时候填写保存路径即可

// 文件路径        $file_dir = 'uploads/barcode/'.date('Y-m-d');        if (!file_exists($file_dir)) {            mkdir($file_dir,0755,true);        }        $imgUrl = $file_dir.'/'.time().'.png';        $class_dir = VENDOR_PATH.'barcode/class/';        // Including all required classes        require_once($class_dir.'BCGFontFile.php');        require_once($class_dir.'BCGColor.php');        require_once($class_dir.'BCGDrawing.php');        require_once($class_dir.'BCGcode39.barcode.php');        // Loading Font        // 注意font和class是同一级文件夹        $font = new BCGFontFile(VENDOR_PATH.'barcode/font/Arial.ttf', 18);        // Don't forget to sanitize user inputs        // $text = isset($_GET['text']) ? $_GET['text'] : 'HELLO';        // The arguments are R, G, B for color.        $color_black = new BCGColor(0, 0, 0);        $color_white = new BCGColor(255, 255, 255);        $drawException = null;        try {            $code = new BCGcode39();            $code->setScale(2); // Resolution            $code->setThickness(30); // Thickness            $code->setForegroundColor($color_black); // Color of bars            $code->setBackgroundColor($color_white); // Color of spaces            $code->setFont($font); // Font (or 0)            $text = input('text');      //接收的参数            $text = isset($text) ? $text :'无参数';                  $code->parse($text); // Text        } catch(Exception $exception) {            $drawException = $exception;        }        /* Here is the list of the arguments        1 - Filename (empty : display on screen)        2 - Background color */        // 保存到本地 (路径,颜色)路径为空则表示显示到页面上        $drawing = new BCGDrawing($imgUrl, $color_white);        if($drawException) {            $drawing->drawException($drawException);        } else {            $drawing->setBarcode($code);            $drawing->draw();        }        $drawing->finish(BCGDrawing::IMG_FORMAT_PNG);

 

5、生成条形码之后,怎么判定条形码是否能用呢?可以把条形码保存成图片到本地,打开官网“https://www.onlinebarcodereader.com/”,上传刚刚生成的条形码,如果解析出的参数跟你输入的一样,说明条形码可以用。

 c29618de19152f792d304f461355199.png

以上就是thinkphp5 + barcode 生成条形码的方法的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/357321.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月6日 01:22:28
下一篇 2025年11月6日 01:25:50

相关推荐

  • 一文讲解thinkphp5如何进行异步验证邮箱

    thinkphp框架教程栏目将给大家介绍thinkphp5使用bootstrapvalidator进行异步验证邮箱的方法,希望对需要的朋友有所帮助! TP5使用bootstrapvalidator进行异步验证邮箱 Remusic Remusic – 免费的AI音乐、歌曲生成工具 514 …

    2025年11月27日 PHP框架
    000
  • thinkphp5如何开启错误调试

    thinkphp5如何开启错误调试?方法如下: 方法一、在application下面的配置文件config.php中把调试模式改为true。 相关推荐:《ThinkPHP教程》 立即学习“PHP免费学习笔记(深入)”; 方法二、在应用的ROOT_PATH目录下面定义.env文件,并且定义APP_DE…

    2025年11月25日 PHP框架
    000
  • 详解ThinkPHP5实现极验滑动验证码geetest功能

    下面由thinkphp教程栏目给大家详解thinkphp5实现极验滑动验证码geetest功能,希望对需要的朋友有所帮助! ThinkPHP5实现极验滑动验证码geetest功能 现在很多网站,比如淘宝,京东等都改用使用极验拖动验证码实现登录,这种方式比传统的验证码方式有更好的体验,减少用户输入的错…

    2025年11月25日 PHP框架
    000
  • 解析ThinkPHP5如何引入Go AOP和PHP AOP编程

    ThinkPHP5 引入 Go AOP,PHP AOP编程 项目背景 目前开发的web软件里有这一个功能,php访问api操作数据仓库,刚开始数据仓库小,没发现问题,随着数据越来越多,调用api时常超时(60s)。于是决定采用异步请求,改为60s能返回数据则返回,不能则返回一个异步id,然后轮询是否…

    2025年11月25日 PHP框架
    000
  • thinkphp5是什么

    thinkphp v5.0是一个为api开发而设计的高性能框架——是一个颠覆和重构版本,采用全新的架构思想,引入了很多的php新特性,优化了核心,减少了依赖,实现了真正的惰性加载,支持composer,并针对api开发做了大量的优化。  ThinkPHP5是一个全新的里程碑版本,包括路由、日志、异常…

    2025年11月23日
    000
  • thinkphp3和thinkphp5的区别

    thinkphp3和thinkphp5的区别?下面给大家介绍一下两者的不同之处: 一、thinkphp3.2和thinkphp5之间的使用差异 1、过去的单字母函数已完全被替换掉,如下: S=>cache,C=>config,M/D=>model,U=>url,I=>i…

    2025年11月23日
    000
  • thinkphp5多语言怎么切换

    thinkphp5多语言进行切换的步骤: 第一步,在配置文件中开启多语言配置。 第二步,创建多语言目录。 立即学习“PHP免费学习笔记(深入)”; 相关推荐:《ThinkPHP教程》 第三步,编写语言包。 视图代码: 控制器代码: 效果如下: 以上就是thinkphp5多语言怎么切换的详细内容,更多…

    2025年11月23日 PHP框架
    000
  • thinkPHP5如何使用rabbitmq

    thinkPHP5如何使用rabbitmq? 安装好 tp5 的 rabbitmq 扩展后,在项目根目录文件添加文件 rabbitmq.php 引导启动 rabbitmq。 <?phpdefine('APP_PATH', __DIR__ . '/applicati…

    2025年11月23日
    000
  • thinkphp5如何读取配置文件的数据

    首先打开编辑器sublime。 然后找到应用目录下的config文件。 立即学习“PHP免费学习笔记(深入)”; 相关推荐:《ThinkPHP教程》 随便选取一个配置参数,比如我们想要读取配置参数app_namespace。 来到控制器里面。 在控制器里面新建一个方法test2。 在方法里面我们利用…

    2025年11月23日 PHP框架
    000
  • thinkphp5如何套用主题

    thinkphp5套用主题的方法: 配置项: ‘DEFAULT_THEME’=>’default’,//默认主题 ‘THEME_LIST’=>’default,theme’,//主题列表 ‘TMPL_DETECT_THEME’=>true//开启自动侦测模版主题 相关推荐:《Thi…

    2025年11月23日
    000
  • thinkphp5怎么上传图片

    前后台代码对应,前台的代码name对应后台的值,获取到需要上传的信息。 上传流程很简单,接收上传的信息,把数据用move方法传到指定位置,然后成功后回调就可以了,注意步骤: 立即学习“PHP免费学习笔记(深入)”; 相关推荐:《ThinkPHP教程》 自己封装的上传,接收传过来的name值,然后获取…

    2025年11月23日 PHP框架
    000
  • thinkphp5怎么做分页

    其实分页自身的内容也不是很多。不过牵扯到样式的问题感觉挺烦。于是找到了分页类看了一下。把大体的结构说一下。如果有需要修改页面样式的可以自行修改样式。最好提前备份,防止意外。 首先是分页的调用,tp5的调用相对非常容易: $mod = new appindexmodelBlogmsg();$mo = …

    2025年11月23日
    000
  • thinkphp5的优点是什么

    php框架有助于促进快速应用开发,不仅节省时间,有助于建立更稳定的应用,而且,减少了重复代码的开发。 通常认为PHP框架的作用相当于模型,控制器,视图。(mvc) 相关推荐:《ThinkPHP教程》 thinkphp5.0的优点 立即学习“PHP免费学习笔记(深入)”; ①中国人开发,更加符合我们的…

    2025年11月23日
    000
  • ThinkPHP5-使用 think-API 部署 JWT

    因为下一个项目要用 tp5 开发一个小程序,所以就使用到了,tp 框架,因为小程序开发需要后台来编写 api 接口,所以就上网查了一下有没有相关的依赖,在此推荐一下 think-api 扩展工具,因为主要想使用其中的 jwt 功能来判断小程序用户的登录状态,下面就以本人的项目为例,简单和大家聊一下,…

    2025年11月22日
    300
  • thinkphp5支持swoole携程吗

    首先,了解一下thinkphp的运行机制。 TP5运行机制: 任何请求都会经过tp5的入口文件,载入框架的配置文件,启动进程,然后处理请求。 在这个index.php的入口文件中,可以看到,它先定义的APP_PATH这个常量,然后引入的框架的启动文件start.php,那我们就去看下start.ph…

    2025年11月22日 PHP框架
    000
  • thinkphp5支持oracle吗

    首先,我们知道php是完全支持oracle的,那么作为php框架的thinkphp5也是完全可以支持oracle的。 thinkphp5如何连接oracle? 数据库:ray 表的结构:ray_user CREATE TABLE IF NOT EXISTS ray_user (user_id int…

    2025年11月22日
    000
  • thinkphp5有什么用

    thinkphp5有什么用? ThinkPHP5作用 ThinkPHP V5.0是一个为API开发而设计的高性能框架——是一个颠覆和重构版本,采用全新的架构思想,引入了很多的PHP新特性,优化了核心,减少了依赖,实现了真正的惰性加载,支持composer,并针对API开发做了大量的优化。 Think…

    2025年11月22日
    000
  • thinkphp5如何调用云片接口实现发送短信验证码找回密码功能

    下面由thinkphp框架教程栏目给大家介绍thinkphp5如何调用云片接口实现发送短信验证码找回密码功能,希望对需要的朋友有所帮助! 思路: 1、用户输入手机号,请求获取短信验证码。2、thinkphp生成短信验证码,存储,同时和其他参数一起发送请求给云片。3、云片发送短信验证码到指定手机号。4…

    2025年11月17日 PHP框架
    000
  • thinkphp5清除缓存、模版缓存和日志缓存

    下面由thinkphp框架教程栏目给大家介绍thinkphp5清除缓存、模版缓存和日志缓存的方法,希望对需要的朋友有所帮助! 直接写入cache模块中,生成控制器 namespace appcachecontroller;use thinkController;use thinkCache; 具体方…

    2025年11月17日
    100
  • thinkphp5怎么隐藏index.php入口文件?

    隐藏方法:1、打开apache的http.conf配置文件,开启mod_rewrite.so模块;2、AllowOverride None项中将None改为All;3、修改“.htaccess”的配置内容,将原代码替换为官方手册提供的代码。 thinkphp现在的php主流框架之一,本篇文章介绍的是…

    2025年11月16日
    000

发表回复

登录后才能评论
关注微信