TypechoJoeTheme

Dcr163的博客

统计

最新文章

2025-12-25

PHP生成无限级菜单

PHP生成无限级菜单
生成无限级菜单 O(n) —— 只遍历数据 两次(建 map + 挂载),每次 O(1) 查父节点 ,pid为父id,关系直接上代码: /** * 生成无限级菜单 O(n) —— 只遍历数据 两次(建 map + 挂载),每次 O(1) 查父节点 ,pid为父id,关系 * @return void */ public function index() { //基础数据 $baseData = [ ['id' => 1, 'pid' => 0, 'name' => 'a1'], ['id' => 2, 'pid' => 1, 'name' => 'a2'], ['id' => 3, 'pid' => 1, 'name' => 'a3'], ['id' => 4, 'pid' => 2, 'name' => 'a4'], ...
2025-12-25

日志

1,734 阅读
0 评论
2025年12月25日
1,734 阅读
0 评论
2025-10-09

Thinkphp6接入Paypal支付流程

Thinkphp6接入Paypal支付流程
直接进入主题这里直接在默认的Index控制器中编写的测试代码<?php /** * Created by PhpStorm. * Author: Dcr163 * Date: 2025/10/10 * Time: 15:49 * paypal服务类 */ namespace app\customer\services; use Exception; use think\App; use think\facade\Log; class PaypalService { //paypal 沙盒环境 const PAYPAL_URL = 'https://api-m.sandbox.paypal.com'; //paypal 正式环境 // const PAYPAL_URL = 'https://api-m.paypal.com'; //获取Token 链接 沙盒环境 const GET_TOKEN_URL = self::PAYPAL_URL . '/v1/oauth2/token'; //订单创建UR...
2025-10-09

日志

2,580 阅读
0 评论
2025年10月09日
2,580 阅读
0 评论
2025-09-28

Thinkphp8.0使用Rabbitmq的做队列和延迟队列代码实例

Thinkphp8.0使用Rabbitmq的做队列和延迟队列代码实例
前提是已经安装好Rabbitmq的服务和安装好Rabbitmq消息延迟队列插件新建数据表使用的orders表结构CREATE TABLE `orders` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `orderno` varchar(60) NOT NULL DEFAULT '' COMMENT '订单号', `price` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '价格', `create_time` datetime DEFAULT NULL, `cancel_time` datetime DEFAULT NULL, `status` tinyint(3) DEFAULT '0', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=75 DEFAULT CHARSET=utf8mb4 COMMENT '测试订单表';添加控制器在app模块新增一个控制器/app/controller/Order...
2025-09-28

日志

2,706 阅读
0 评论
2025年09月28日
2,706 阅读
0 评论
2025-09-11

php使用usort排序多维数组内的值

php使用usort排序多维数组内的值
直接上代码:$data = [ '一队' => [ 'counts' => 0, 'totals' => 0, 'team' => [ ['realname' => '张三', 'counts' => 10, 'totals' => 600], ['realname' => '张三2', 'counts' => 17, 'totals' => 478], ['realname' => '张三3', 'counts' => 190, 'totals' => 10000], ['realname' => '张三4', 'counts' => 8, 'totals' => 500], ] ], '二队' => [ 'counts' => 0, 'totals' =...
2025-09-11

日志

2,318 阅读
0 评论
2025年09月11日
2,318 阅读
0 评论
2025-06-21

PHP8编译安装Swoole6.0.2

PHP8编译安装Swoole6.0.2
环境Centos8PHP8.4.8Swoole6.0.2下载Swoole6.0.2使用的Github地址下载(比较新),下载地址:https://github.com/swoole/swoole-src可以下载zip或源码都行,我这边下载好了.zip解压:unzip swoole-src-master.zip进入到解压后的目录可以看到解压出来的是没有configure这个执行文件的,我们需要用php8的phpize命令生成下,我这边php8安装目录在/usr/local/php8/直接在当前目录执行命令:/usr/local/php8/bin/phpize执行完毕后就发现生成了这个文件了:configure开始执行configure执行命令:./configure --with-php-config=/usr/local/php8/bin/php-config这个选项--with-php-config一定要匹配到对应的目录编译并且安装执行命令:make && make install如果不出意外的话,就编译好了swoole.so这个文件到php8的扩展目录下在ph...
2025-06-21

日志

2,798 阅读
0 评论
2025年06月21日
2,798 阅读
0 评论
2025-06-05

Centos8搭建LNMP环境

Centos8搭建LNMP环境
先新建一个软件目录,我们全部放在lnmp这个目录中mkdir lnmp && cd lnmp下载Nginx先去官方网站下载http://nginx.org/en/download.html,这里我们选择最新版下载 http://nginx.org/download/nginx-1.23.4.tar.gz[root@centos8_1 lnmp]# wget http://nginx.org/download/nginx-1.23.4.tar.gz下载Mysql,这里我们使用Mysql8.0.33下载地址:https://cdn.mysql.com/Downloads/MySQL-8.0/mysql-8.0.33-linux-glibc2.12-x86_64.tar.xz[root@centos8_1 lnmp]# wget https://cdn.mysql.com/Downloads/MySQL-8.0/mysql-8.0.33-linux-glibc2.12-x86_64.tar.xz下载PHP7.4.33下载地址:https://www.php.net/di...
2025-06-05

日志

2,774 阅读
0 评论
2025年06月05日
2,774 阅读
0 评论
2025-06-04

安装PHP8报错:configure: error: iconv does not support errno

安装PHP8报错:configure: error: iconv does not support errno
遇到 configure: error: iconv does not support errno 错误时,通常与 libiconv 库的版本或配置有关。以下是详细的解决方案:安装或升级 libiconvPHP 8 对 libiconv 的兼容性要求较高,需安装 GNU 的 libiconv(非系统自带的 glibc 的 iconv)。步骤:1.下载 libiconv 源码wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.16.tar.gz2.解压并编译安装tar -zxvf libiconv-1.16.tar.gz cd libiconv-1.16 ./configure --prefix=/usr/local/libiconv make && make install
2025-06-04

日志

2,851 阅读
0 评论
2025年06月04日
2,851 阅读
0 评论
2025-05-15

在PHP中下载网络图片尽量用CURL,不要用file_get_content

在PHP中下载网络图片尽量用CURL,不要用file_get_content
例如:https://thirdwx.qlogo.cn/mmopen/vi_32/jDiauSBiauFCicDp9CBMjqNLfuaUibXQHciaaESNwvZhK2FQXTBJcvYwYcyOWrOmKO7otewTphq59g4J2GPfxE8DdNQ/132如果用file_get_contents函数下载保存,会影响程序的运行速度,快则几秒,多则几十秒这里建议用CURL操作:/** * 下载头像 * @param $url * @param $save_path * @param $openid * @return false|string[] */ private function saveWechatAvatar($url, $save_path, $openid) { // 创建保存目录 $absolute_path = $save_path; if (!file_exists($absolute_path)) { ...
2025-05-15

日志

2,642 阅读
0 评论
2025年05月15日
2,642 阅读
0 评论
2025-05-14

生产环境LNMP环境优化配置,高并发配置

生产环境LNMP环境优化配置,高并发配置
初始化服务器后,先挂载数据盘为数据盘创建分区fdisk -lu为数据盘创建分区yum install -y parted #开始分区 /dev/vdb 这个磁盘替换成自己的设备名称 parted /dev/vdb #在Parted交互命令行输入以下内容,设置GPT分区格式。 mklabel gpt #划分一个主分区,并设置分区的开始位置和结束位置。 mkpart primary 1 100% #检查分区是否对齐 align-check optimal 1 #是对齐的,结果如下所示: 1 aligned #查看分区表 print #退出Parted工具 quit #系统重读分区表 partprobe #查看新分区信息 fdisk -lu /dev/vdb分区创建文件系统yum install -y e2fsprogs #运行以下命令,创建文件系统 mkfs -t ext4 /dev/vdb配置开机自动挂载分区#备份/etc/fstab文件 cp /etc/fstab /etc/fstab.bak #修改/etc/fstab文件 echo `blkid /dev/vdb | awk ...
2025-05-14

日志,Linux

2,663 阅读
0 评论
2025年05月14日
2,663 阅读
0 评论
2025-01-15

电工基础笔记

电工基础笔记
基础的电工知识人体安全电压:36V以下安全跳闸电流: 30MA电工设备软件:天空直通车对电要有敬畏之心,不要用手去触碰。125mm 能拉进去触电,不要用手摸单相电流的计算公式:电流 = 功率/电压 例如:2.6KW 220v电压,电流=2.6*1000 / 220 = 11.8三相电流的计算公式: 电流=功率/电压/1.732/0.8(无功) 例如:18KW 380v电压,电流=18*1000 / 380 / 1.732 / 0.8 = 11.8 = 34生活中常用负载设备快捷计算电流:功率kw*2,例如:15KW的设备,30A
2025-01-15

电工基础

3,965 阅读
0 评论
2025年01月15日
3,965 阅读
0 评论

人生倒计时

今日已经过去小时
这周已经过去天
本月已经过去天
今年已经过去个月

最新回复

  1. blowjob
    2026-07-19
  2. バイナリー 取引ツール
    2026-07-11
  3. http://www.annunciogratis.net/author/oevsandra54
    2026-05-31
  4. web page
    2026-04-10
  5. plenty of insightful
    2026-03-19

标签云