IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> PHP知识库 -> tp6条形码的制作 -> 正文阅读

[PHP知识库]tp6条形码的制作

1、去官网下载类库 “https://www.barcodebakery.com/en/download”,选择自己的版本下载
2、解压放到“extend目录下”
3、我们可以直接使用官方给的例子(test_1D.php),复制到自己需要用的地方,然后根据自己的需求稍加改动即可,需要注意的是,加载第三方类库的路径需要改一下。
4-注意代码:require_once( c l a s s d i r . ′ B C G c o d e 128. b a r c o d e . p h p ′ ) ; / / 条 码 类 型 class_dir.'BCGcode128.barcode.php'); //条码类型 classd?ir.BCGcode128.barcode.php);//code = new BCGcode128();//条码类型以上两行代码:是生成对应的条码类似 ,根据实际的要求进行处理
生成条形码的php代码`` public function txm($order_number){

    require('../extend/barcode/example/vendor/autoload.php');
    require('../extend/barcode/packages/barcode-common/src/BCGColor.php');
    require('../extend/barcode/packages/barcode-common/src/BCGFontFile.php');
    require('../extend/barcode/packages/barcode-1d/src/BCGcode128.php');
    require('../extend/barcode/packages/barcode-common/src/BCGDrawing.php');

    $colorBlack = new BCGColor(0, 0, 0);
    $colorWhite = new BCGColor(255, 255, 255);
   // $font = new BCGFontFile( '../extend/barcode/example/font/Arial.ttf', 18);

    $drawException = null;
    $barcode = null;

    try {
        $code = new BCGcode128();

        $code->setScale(2); // 条形码的厚度
        $code->setThickness(30); // Thickness
        $code->setForegroundColor($colorBlack); // 条形码颜色
        $code->setBackgroundColor($colorWhite); // 空白间隙颜色
        //$code->setFont($font); //加载字体大小
        $code->setStart(null);
        $code->setTilde(true);
        $code->parse($order_number); // Text
        $barcode = $code;
    } catch (Exception $exception) {
        $drawException = $exception;
    }

    $drawing = new BCGDrawing($barcode, $colorWhite);


    if($drawException) {
        $drawing->drawException($drawException);
    }else{

        $drawing->setBarcode($code);
    }

    // 生成PNG格式的图片
    header('Content-Type: image/png');
    header('Content-Disposition: inline; filename="barcode.png"');//自动下载

    $drawing->finish(BCGDrawing::IMG_FORMAT_PNG);

需要注意的是:一定要根据自己下的条形码版本来选择对应的PHP版本,最新的是需要7.4版本以上才可以;条形码在视图的引入直接如下,因为我在table方法里面调用的条形码所以需要一个参数去做条件不让他在视图里面显示。否则会出现头部乱码的情况。
1.在tp6中已经移出了import()和vendor();所以引入第三方类库只能使用include和require了。
2. Failed opening required ‘D:\phpstudy_pro\WWW\tp\public/extend/example/vendor/autoload’ (include_path=’.;C:\php\pear’)报错的解决办法:原因是路径不对,所以我们应该使用绝对路径或者使用./这样的开头;也有可能是因为文件夹中含有中文的原因;也有可能是文件路径不对,配置的路径不对造成的。
3. unexpected ‘int’ (T_STRING), expecting function (T_FUNCTION) or const (T_CONST)原因:int是强制将该变量转换成数值类型。如果需要用 private int $h;php版本需要7.4版本以上才不会报错
目前有两类变量可以声明类型: 形参,返回值,支持的类型有整形,浮点型,字符串型,布尔型,详情见https://www.cnblogs.com/fengyumeng/p/8032834.html。php是一种弱类型语言,__construct(?BCGBarcode $barcode,)代表的是传入的参数必须是BCGBarcode (或其子类)的对象;需要注意得是,即使使用了类型约束,如果使用NULL作为参数的默认值,那么在调用函数的时候依然可以使用NULL作为实参。
public function setBarcode(?BCGBarcode $barcode): void,后面标记的是函数的返回类型,如果是void就是不需要返回值,没有返回值;void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。 void真正发挥的作用在于:1) 对函数返回的限定;(2) 对函数参数的限定。详情见https://www.php.cn/php-ercikaifa-344329.html。

  PHP知识库 最新文章
Laravel 下实现 Google 2fa 验证
UUCTF WP
DASCTF10月 web
XAMPP任意命令执行提升权限漏洞(CVE-2020-
[GYCTF2020]Easyphp
iwebsec靶场 代码执行关卡通关笔记
多个线程同步执行,多个线程依次执行,多个
php 没事记录下常用方法 (TP5.1)
php之jwt
2021-09-18
上一篇文章      下一篇文章      查看所有文章
加:2021-07-04 19:06:42  更:2021-07-04 19:07:15 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/14 14:31:16-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码