首页 > 编程语言 >芯烨小票打印机PHP打印代码

芯烨小票打印机PHP打印代码

时间:2023-05-10 12:22:33浏览次数:38  
标签:打印机 ch setopt 芯烨 小票 打印 curl PHP CURLOPT

芯烨小票打印机PHP打印代码,案例中打印机为58mm打印机

58mm的机器,一行打印16个汉字,32个字母
80mm的机器,一行打印24个汉字,48个字母

本次添加了补打空格的代码,根据商品名称计算后面需要增加多少空格能对齐价格和份数。

所有代码如下:

 1 <?php 
 2 
 3 namespace app\gctest\controller;
 4 class Index
 5    {
 6       public  function index(){
 7         header("Content-type:text/html;charset=utf-8");//必须 官方要求
 8         header("Access-Control-Allow-Origin: *");//必须 否则可能报跨域错误
 9         $user = '[email protected]';//芯烨云平台注册用户名(开发者 ID)
10         $timestamp = time();//当前UNIX时间戳,10位,精确到秒
11         $user_key = '0f04568213985625f45a2';//用户开发者密钥
12         $sign = sha1($user.$user_key.$timestamp);//对参数 user + user_key + timestamp 拼接后(+号表示连接符)进行SHA1加密得到签名,值为40位小写字符串
13         $sn = '02B58MLF221254B';//打印机编号
14         $arr=array(array("牛肉面","20元","2份"),array("红焖猪手砂锅饭","25元","3份"),array("可乐","9元","2份"));
15         $content0='';
16        foreach($arr as $k=>$v){
17            $space =$this->addspace($v[0]);
18            //var_dump($v[0]);
19            $content0.='<L><HB>'.$v[0].$space.$v[1].'   '.$v[2].'<BR>';
20        }
21         $content = 
22 '<CB>**店铺名称**
23 <L><N>--------------------------------
24 <CB>--在线支付--
25 <L><N>下单时间:2023年5月9日22时32分
26 订单编号:'.rand(100,1000).'
27 **************商品**************
28 <C>---1号窗口---</C><BR>'.
29 $content0.
30 '牛肉                      x1 8
31 --------------------------------
32 配送费:¥4
33 --------------------------------
34 <N>小计:¥31
35 <L><N>********************************
36 <N>订单总价:¥35
37 <HB>香洲花园 5栋6单元1404号
38 张先生:18966717535
39 订单备注:[用餐人数]1人;
40 少放辣椒
41 <C><HB>**#8 完**
42 <BR><BR>';//打印内容
43         $data = json_encode(array("user"=>$user,"timestamp"=>$timestamp,"sign"=>$sign,"sn"=>$sn,"content"=>$content));
44         $url = "https://open.xpyun.net/api/openapi/xprinter/print";
45         $result = $this->curl_post($url,$data);
46         var_dump($result);
47         }
48         
49         function curl_post($url,$data){
50         $header = array('Content-Type: application/json; charset=utf-8');
51         $ch = curl_init();
52         curl_setopt($ch, CURLOPT_URL, $url);
53         curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
54         curl_setopt($ch, CURLOPT_POST, 1);
55         curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
56         curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
57         curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
58         curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
59         curl_setopt($ch, CURLOPT_HEADER, 0);
60         curl_setopt($ch, CURLOPT_TIMEOUT, 10);
61         $output = curl_exec($ch);
62         curl_close($ch);
63         return $output;
64         }
65         
66         function addspace($pname){
67             $strlen0 = mb_strlen($pname);
68             $strlen = 10-$strlen0;
69             for($i=0;$i<$strlen;$i++){
70                 $sp.="  ";
71             }
72             return $sp;
73         }
74  }

 

标签:打印机,ch,setopt,芯烨,小票,打印,curl,PHP,CURLOPT
From: https://www.cnblogs.com/jeib/p/17387628.html

相关文章

  • PHP面向接口编程及多态-示例代码
    /***1.接口使用上也满足多态性*2.接口实际是定义一种规范*3.体会面向接口编程*/interfaceUsb{publicfunctionstart();publicfunctionstop();}classFlashimplementsUsb{publicfunctionstart(){echo'U盘启动';echo'<br>';......
  • PHP前后端交互
    PHP是现如今十分流行的轻量级语言,经常用来做应用的后端开发,其特点是语法简单,十分容易上手。除了单独做后端,PHP还能够将程序嵌入到HTML文件中执行,非常容易实现简单的前后端交互。而且PHP的运行很轻松,只要下载PHP环境并打开服务,就能通过访问文件的形式执行PHP文件,并且获得其返回的数......
  • PHP 类 BaseClass
    1.创建一个简单的类<?phpclassExample{ public$item='hellozxl'; public$name; functionSample() { $this->Test(); } functionTest() { echo'ok'."<br/>"; echo$this->item; $regular=100; echo$r......
  • php获取未解码之前的原始接口请求参数
    前言目前的几个项目,业务方基本都使用POST方式请求接口,我们本机磁盘会保留一份请求的原始参数用于请求分析和问题排查使用,一般有问题,也会基于seqid(请求唯一id)捞到日志,copy参数模拟请求看是否复现,但一直有个比较蛋疼的问题,PHP的$_POST,$_GET,$_REQUEST这些获取参数的方法获取到的......
  • PHP:cURL error 60: SSL certificate unable to get local issuer certificate](转)
    原文:https://www.cnblogs.com/xiaofeilin/p/14128025.html1、问题导致该问题的原因在于没有配置curl.cainfo,该配置位于php.ini中2、解决下载cacert.pemhttps://curl.haxx.se/ca/cacert.pem配置php.ini[curl];AdefaultvaluefortheCURLOPT_CAINFOoption.Thisis......
  • php获取1688阿里巴巴关键字搜索新品数据API接口、获取上新关键词推荐、获取宝贝详情数
    ​ php的主要优势以及特点: 便于学习和使用:PHP是一门非常容易学习和使用的语言,其语法和结构都非常简单。具有广泛的应用范围:PHP可以用于开发各种类型的Web应用,如博客系统、内容管理系统、电子商务网站、社交网络等。巨大的社区支持:有一个庞大的PHP社区,提供了大量的......
  • php:7-cli-apline安装mysql redis mongo扩展模块
    apkadd--no-cachebuild-dependenciesbuild-baseopenssl-devautoconfg++libtoolmakecurl-devlibxml2-devlinux-headersdocker-php-ext-install-j2mysqlidocker-php-ext-installpdo_mysqlpeclinstallmongodb-1.2.2echo"extension=mongodb.so"......
  • PHP trait使用
    一、trait、继承、实例化三者的区别对于当前一个类需要用到另一个或多个类的方法的情况,我们一般会想到的方式有继承、直接实例化另外一个或多个类等等的方法,来对比一下这些方法和Trait类的区别:继承:对于继承,可以完美地复用另一个类的一些方法,但是对于需要复用多个类的方法时,PHP......
  • [李景山php] 20170504深入理解PHP内核[读书笔记]--第一章准备工作和背景知识--2
    第一节:环境搭建编译安装的关键点:配置编译安装环境,build-essential环境。1.1准备编译环境针对于ubuntu16.04下面建设编译安装环境:apt-getinstallbuild-essential1.2编译cd~/php-src./buildconf./configure–help#查看可用参数./configure–disable-all#编......
  • PHP Windows 下 XAMPP 的 xdebug 配置
    在IntelliJ下调试PHP的断点有时候还是比较困惑的。同时根据你使用的xdebug配置也有关系。xdebug2.x下面的配置是xdebugVersion2的配置,如果你使用xdebug3.x版本的话,配置是不同的。[XDebug]zend_extension="php_xdebug.dll"xdebug.remote_autostart=1xdebug.profil......