自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 抖店已付款订单批量解密

官方给出的抖音订单加密解决方法是如店铺订单需要别人代发货或者代打单,建议使用平台提供的官方代发管理工具,无需下载订单,商家在抖店后台直接推送代发订单信息至第三方代发所使用的打单系统中。用妙手或者是逸淘等下单软件,手工一单一单发货,每一单你都可以看到用户的手机号码和详细地址。抖音小店订单没加密之前,我们可以随意导出所有的订单,然后导表发货。但是现在不行了,导出来的订单表格信息都是乱码的。或者是开通抖音电商电子面单,下载安装打印组件后,不需要导出订单信息,可直接在该打单软件上实现打单发货。然后联系我帮您解决。

2025-02-20 16:36:57 345 2

原创 golang grpc初识

消息就算需要传输的数据格式的定义。如果想要将消息类型用在RPC系统中,可以在.PROTO文件中定义一个RPC服务接口,protocolbuffer编译器会根据所选择的不同语言生成服务接口代码及存根。标识号:在消息体的定义中,每个字段都必须要有一个唯一的标识号,标识号是[0.2^29-1]范围内的一个整数。可以在其他消息类型中定义,使用消息类型,在下面的例子中,Person消息就定义在PersonInfo消息内。repeated:消息体中可重复字段,重复的值的顺序会被保留,在go中重复的会被定义为切片。

2022-12-30 19:14:26 617

原创 phpExcel方法详解

phpExcel方法详解,数据折叠demo

2022-11-18 14:54:27 1384

原创 golang struct中sync.Mutex类型的问题

struct 是我们写 Go 必然会用到的关键字, 不过当 struct 遇上一些比较特殊类型的时候, 例如: Mutex, 你注意过你的程序是否依然正常吗 ?

2022-10-19 10:37:07 460

原创 Windows下使用Virtualenv创建虚拟环境

windows下virtualenv介绍及使用

2022-06-28 15:28:08 937

原创 JetBrains使用GitHub Copilot登录问题

github无法登陆的解决办法

2022-06-16 16:38:57 1133

原创 php redis分布式锁

<?phpclass Lock { /** * 单据锁默认超时时间(秒) */ const REDIS_LOCK_DEFAULT_EXPIRE_TIME = 86400; protected $redis; /** * 初始化redis * @param string $host redis主机 * @param int $prot 端口 * @return string $auth redis

2022-03-31 17:04:36 766

原创 微信服务商V3版支付

一、前言首先去微信支付服务商平台查看相关接口和官方提供的sdk。网址:https://pay.weixin.qq.com/wiki/doc/apiv3_partner/wechatpay/wechatpay6_0.shtml,了解清楚支付需要的参数和需要申请的微信服务商相关信息。二、开始demo我使用的是php语言,用的thinkphp框架,所以使用composer直接拉去SDK就可以。composer require wechatpay/wechatpay按照sdk的约定去堆积代码块,做好参数验

2022-03-16 10:22:56 1961

原创 使用composer命令手动加载vendor中的第三方类库(亲测可行)

1、首先下载需要的第三方类库,放在TP框架下的vendor文件夹下(自行查看里面用到的命名空间,新建的文件夹最好能和命名空间一致)2、给第三方类库SDK写上命名空间,命名空间为该类库的文件夹对应的名字3、在composer.json文件中添加需要加载的第三方类库(文件路径从vendor开始写) { "require": { "aliyunmq/mq-http-sdk": ">=1.0.3", "wechatpay/wechatpay": "^1.0" }, "a

2021-09-07 16:27:01 2506 3

原创 b+树和b树的区别

B 树(Balance Tree)即为平衡树的意思,下图即是一棵 B 树:图中的 p 节点为指向子节点的指针,二叉查找树和平衡二叉树其实也有,因为图的美观性,被省略了。图中的每个节点称为页,页就是我们上面说的磁盘块,在 MySQL 中数据读取的基本单位都是页,所以我们这里叫做页更符合 MySQL 中索引的底层数据结构。从上图可以看出,B 树相对于平衡二叉树,每个节点存储了更多的键值(key)和数据(data),并且每个节点拥有更多的子节点,子节点的个数一般称为阶,上述图中的 B 树为 3 阶 B 树

2021-04-23 15:11:50 871

原创 php 调用python 加密pdf文件

1.用python 包管理工具pip 安装PyPDF2pip install PyPDF22.编写python代码 save_pdf.pyfrom PyPDF2 import PdfFileReader, PdfFileWriterimport sysdef transform(origin, outfile, password): pdf_reader = PdfFileReader(origin) pdf_writer = PdfFileWriter() for

2021-04-16 17:01:51 153

原创 Composer 安装与使用

Composer 是 PHP 的一个依赖管理工具。我们可以在项目中声明所依赖的外部工具库,Composer 会帮你安装这些依赖的库文件,有了它,我们就可以很轻松的使用一个命令将其他人的优秀代码引用到我们的项目中来。Composer 默认情况下不是全局安装,而是基于指定的项目的某个目录中(例如 vendor)进行安装。Composer 需要 PHP 5.3.2+ 以上版本,且需要开启 openssl。Composer 可运行在 Windows 、 Linux 以及 OSX 平台上。Composer

2021-04-16 13:47:00 140

原创 thinkphp5 使用ElasticSearch 做搜索

上篇文章已经介绍过ElasticSearch 的安装了,下面我们进行简单的应用。一、安装中文分词ik下载 ik https://github.com/medcl/elasticsearch-analysis-ik/releases注意自己的ES版本,要选择对应匹配的ik 下载后解压到一个文件夹下并把解压后的内容放到 D:\elasticsearch-5.4.0\plugins\ik 文件夹下 没有ik文件夹自己建一个成功后重启ElasticSearch 服务 ok!!二、项目内安装E

2021-04-01 15:34:07 768

原创 windows10下安装ElasticSearch

一、安装前提windows下已经安装好了jdk8的版本二、看java jdk版本,java -version,不能低于1.8版本,否则会影响ES的使用从而产生各种问题。如果你的java jdk版本低于1.8,请重新安装,安装步骤:下载并安装jdk→我的电脑(右击)→属性→高级系统设置→环境变量:变量名变量值JAVA_HOMEjdk的安装路径CLASSPATHjdk的.%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar

2021-04-01 10:13:21 559

原创 PHP curl_multi_exec 并发请求

使用curl_multi_exec并发请求外部接口有时候在一个PHP方法中要多次调用外部的接口,为了优化代码,提高效率,我们不妨使用curl_multi_exec并发处理多个请求,这样可以明显地提高获取响应数据的速度,减少程序执行的时间,下面是一个实际运行的例子。<?php/** * 使用curl并行发送多个请求获取数据 * @param array $urls 多个请求数组 * @return array */function sendMulti_request(arr

2021-03-18 11:00:03 590 1

转载 Mysql小记

MySQl查询语句大全综合使用 查询 目录: #----综合使用 书写顺序 select distinct * from '表名' where '限制条件' group by '分组依据' having '过滤条件' order by limit '展示条数' 执行顺序 from -- 查询 where -- 限制条件 group by -- 分组 having -- 过滤条件 order by -- 排序 limit -- 展示条数

2021-01-27 09:59:07 212

转载 RabbitMQ各方法详解(PHP版)

exchange_declare($exchange, $type, $passive = false, $durable = false, $auto_delete = true, $internal = false, $nowait = false, $arguments = array(), $ticket = null) 。试探性申请一个交换器,若该交换器不存在,则创建;若存在,则跳过。序号 参数名 默认值 解释1 $exchange 交换器名称。2 $type 交换器类型,常见的如f

2020-09-09 12:00:32 810

原创 php curl上传file

我用的是tp5,需求是前端把file给到后端,后端再去把file提交给第三方接口去做上传。 private function curlUploadFile($url, $data,$headers = array()) { $curl = curl_init(); if (class_exists('\CURLFile')) { curl_setopt($curl, CURLOPT_SAFE_UPLOAD, true);

2020-08-16 12:55:15 1708 1

原创 微信公众号接口开发

使用Yii2框架<?phpnamespace frontend\controllers;use Yii;use frontend\components\Controller;class PayController extends Controller{ private $app_id = 'xxxxxxxxx';//appid和app_secret在开通微信支付后接收到的邮件里面可看到 private $mch_id = '123456790';//商户号

2020-06-12 16:22:29 596

原创 PHP_MySQL之间的连接步骤(简称六脉神剑)

1.获取链接$con = mysqli_connect('主机','账户名','密码') or die('连接失败的信息')2.选择数据库mysqli_select_db('表名',$con);注意:mysql_select_db与mysqli_select_db的参数位置相反,mysqli_query()也是一样的3.设置操作编码(建议有)mysqli_query("SET NAMES UTF-8");4.向数据库发送指令sql(ddl(数据定义语言),dml(数据操作语言 upd

2020-06-12 16:02:38 254

原创 MySQL使用order by field()自定义排序

示例:select * from score order by field(level,'1','2','3','4');`

2020-06-12 15:57:07 417

原创 CGI、FastCGI、PHP-CGI、PHP-FPM 关系简单分析?

CGI:公共网关接口,它的作用就是是nginx和php进行通信,nginx服务器在接受到浏览器传递过来的数据后,如果请求的是静态的页面或者图片等无需动态处理的则会直接根据请求的url找到其位置然后返回给浏览器,这里无需php参与,但是如果是一个动态的页面请求,这个时候nginx就必须与php通信,这个时候就会需要用到cgi协议,将请求数据转换成php能理解的信息,然后php根据这些信息返回的信息也要通过cgi协议转换成nginx可以理解的信息,最后nginx接到这些信息再返回给浏览器。fast-cgi:可

2020-06-12 15:30:23 99

原创 php 封装curl 请求

/** * CURL请求 * @param $url 请求url地址 * @param $method 请求方法 get post * @param null $postfields post数据数组 * @param array $headers 请求header信息 * @param bool|false $debug 调试开启 默认false * @return mixed */ function http_r.

2020-06-12 15:25:04 319

原创 php计算两个时间是否存在交集,主要用于业务时间冲突判断

/** * PHP计算两个时间段是否有交集(边界重叠不算) * * @param string $beginTime1 开始时间1 * @param string $endTime1 结束时间1 * @param string $beginTime2 开始时间2 * @param string $endTime2 结束时间2 * @return bool */ function is_time_cross($begin.

2020-06-12 15:22:41 253

原创 对比Go 与 PHP 的语法

Go 是由 Google 设计的一门静态类型的编译型语言。它有点类似于 C,但是它包含了更多的优点,比如垃圾回收、内存安全、结构类型和并发性。它的并发机制使多核和网络机器能够发挥最大的作用。这是 GoLang 的最佳卖点之一。此外,Go 速度快,表现力强,干净且高效。这也是 Go 如此吸引开发者学习的原因。PHP 是一种动态类型语言,它使新手更容易编写代码。现在的问题是,PHP 开发人员能否从动态类型语言切换到像 Go 这样的静态类型语言?为了找到答案,让我们对比一下 Go 和 PHP 之间的语法差异。

2020-06-03 15:12:14 323

转载 安装rabbitmq (windows)

rabbitMQ是一个在AMQP协议标准基础上完整的,可服用的企业消息系统。它遵循Mozilla Public License开源协议,采用 Erlang 实现的工业级的消息队列(MQ)服务器,Rabbit MQ 是建立在Erlang OTP平台上。1.安装Erlang所以在安装rabbitMQ之前,需要先安装Erlang 。小编使用的是otp_win64_18.1 ,需要其他版本或者32位系统的,可以去官网下载。全部点击“下一步”就行。有的选择其他的安装方式,可能需要添加一下系统环境变量(正常安

2020-06-03 11:00:39 71

转载 fast-CGI 和 PHP-fpm

cgi 是什么早期的 webserver 只处理 html 等静态文件,但是随着技术的发展,出现了像 php 等动态语言。webserver 处理不了了,怎么办呢?那就交给 php 解释器来处理吧!交给 php 解释器处理很好,但是,php 解释器如何与 webserver 进行通信呢?为了解决不同的语言解释器 (如 php、python 解释器) 与 webserver 的通信,于是出现了 cgi 协议。只要你按照 cgi 协议去编写程序,就能实现语言解释器与 webwerver 的通信。如 ph

2020-06-03 10:22:32 195

原创 CentOS 7 下安装 nginx + PHP 运行环境

PHP 安装步骤一、安装 PHP下载地址安装必要扩展包更新扩展包 yum install epel-releaseyum install -y gcc gcc-c++ make cmake bison autoconf wget lrzsz \yum install -y libtool libtool-ltdl-devel \yum install -y freetype-devel libjpeg.x86_64 libjpeg-devel libpng-devel gd-devel .

2020-06-03 09:49:54 477

转载 理解 cookie、session、token、jwt

发展史1、很久以前,Web 基本上就是文档的浏览而已, 既然是浏览,作为服务器, 不需要记录谁在某一段时间里都浏览了什么文档,每次请求都是一个新的 HTTP 协议, 就是请求加响应, 尤其是我不用记住是谁刚刚发了 HTTP 请求, 每个请求对我来说都是全新的。2、但是随着交互式 Web 应用的兴起,像在线购物网站,需要登录的网站等等,马上就面临一个问题,那就是要管理会话,必须记住哪些人登录系统, 哪些人往自己的购物车中放商品, 也就是说我必须把每个人区分开,这就是一个不小的挑战,因为 HTTP 请求是无

2020-06-03 09:40:48 178

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除