自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

php菜鸟博客

PHP菜鸟博客,PHP技术,PHP心得,PHP学习,php资料

  • 博客(247)
  • 资源 (1)
  • 收藏
  • 关注

转载 阿里云-武林头条-建站小能手争霸赛

邀请好友完成场景体验,参与PK赢取大奖,最高得iPhone13!根据邀请好友数量进行排名,还有更多大奖等你来拿!2022.7.25-2022.8.5,参与武林头条-建站小能手争霸赛,完成以下比赛即可领取丰厚礼品!完成3个任务,可得20元猫超卡,工作日10点发放,每日限量200份限量,快点行动起来吧!第一回合少林、武当、峨眉三大门派会师。第二回合群雄逐鹿,争当第一。武林头条-建站小能手争霸赛。...

2022-07-25 11:43:39 231

原创 阿里云无影云桌面初体验

无影云桌面(Elastic Desktop Service),是一种易用、安全、高效的云上桌面服务。无需前期传统硬件投资,可帮您快速构建安全、高性能、低成本的企业桌面办公体系,可广泛应用于具有高数据安全管控、高性能计算等要求的安全办公、金融、设计、影视、教育等领域。我是个人使用,我就先说说我的使用场景,我会把工作中一些系统的账号密码保存到无影,这样不在公司的时候,我就能在任何地方链接上我的无影来进行系统的查看和操作了。还有一个小秘密就是我可以在无影上面登录自己的qq,以及一些其他软件,实现24小时.

2022-01-15 12:01:50 3194

原创 使用阿里云composer镜像加速

1.什么是composer?Composer 是一个新的安装包管理工具,服务于 PHP 生态系统。它实际上包含了两个部分:Composer 和 Packagist。下面我们就简单说一下他们各自的用途。composer可以理解为一个命令行工具,它的使命就是帮你为项目自动安装所依赖的开发包。node.js包管理工具是npm,composer是php包依赖管理工具。Packagist是 Composer 的默认的开发包仓库,在composer命令行工具里面我们可以指定使用不同的仓库。P..

2021-11-30 12:38:41 634

原创 aes加密参数值,带参跳转h5实现免登录方案

1.比如在app内需要嵌入一个h5的商城系统,app自己有会员系统,跳转到h5页面的时候需要把会员信息传入给h5,h5判断会员是否存在,不存在注册并登录,存在直接无感登录。2.app端跳转到h5,首先app需要封装一个json里面是会员的唯一标识以及其他一些信息,然后把这个json通过aes加密,aes后的值在base64编码,base64后的值如下面的loginParams参数值,里面不会包含空格,但是会有+号。http://域名?loginParams=+uzJvHcVFgqKAB9vnf5+y

2021-06-16 16:10:48 702 1

转载 结合msyql事务完美实现第三方退款接口示例

1.mysql的事务可以实现,要么事务块内代码全部执行,要么全部都不执行。如果都是自己写sql实现,是完全没有任何问题的。2.如果要实现第三方支付的退款,比如微信支付订单,退款微信支付的金额,那么该怎么实现呢?代码如下//启动事务Db::startTrans();try{//订单日志$order_log['order_sn']=time();$ord...

2021-06-16 11:21:44 314

转载 php的BC高精确度函数库

用过php计算的朋友知道直接用加减乘除来计算偶尔会出现多位小数的误差。可以用以下高精度计算函数来解决这个问题。#两个高精度数比较#int bccomp ( string $left_operand , string $right_operand [, int $scale ] )#$left=$right 返回 0#$left<$right 返回 -1#$left>$right 返回 1#$scale 小数点位数#两个高精度数相加#string bcad...

2021-06-16 11:04:13 123

原创 记录一次和工行对接对方提供的aeskey是24位字符串

1.首先看见这个24位字符串心里很慌,因为php的版本的openssl函数的aes加密密钥超过16位后面的就不参与加密了,如果是这样银行加密后的密文,php肯定无法解密。后来通过看java版本sdk才发现,这个24位字符串并不是aes的最终密钥。而是先把这个24位字符串base64解码得到一个16位的包含乱码的字符串。 2.我们把这个24位字符串base64解码后的16位key,拆成16位,1...

2021-05-11 19:59:22 747

原创 关于php的aes加密,openssl和mcrypt一些想说的话

1.在php的世界里面mcrypt的生命肯定是已经走到了尽头,从php7.+开始已经不再支持mcrypt函数,需要使用openssl代替。但是这里有个坑,mcrypt对秘钥的长度没有限制,传入多少长度都会参加加密,但是在openssl_encrypt中。key长度只能是16长度,>16长度后,只有前16位参与加密。 2.aes在php7以下用mcrypt实现代码: <?php...

2021-05-11 17:58:09 520

原创 微信小程序web-view内嵌h5,实现双向传参案例

1.微信小程序带参跳转h5代码 .js Page({ data:{ openid:'123456789x' }, onLoad(options){ varopenid=this.data.openid; this.setData({ src:'https://www.wlphp.com/test/test.php?...

2021-05-08 20:54:27 668

原创 jquery选择器找到含有href属性的所有a标签

案例: 当页面上含有href属性的a标签被点击的时候,增加加载动画效果。$(function (){ $("a[href]").click(function (){ //loading带文字 layer.open({ type: 2 ,content: '加载中,请稍后' }); }); }); ...

2021-05-06 04:37:29 1886

原创 如何把一行纯内容的rsa私钥,处理成php函数openssl_verify可以使用的格式

//rsa私钥 $pkey="MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCeZ1SzplMWFgkZC0R3fmYeMfAkW+R5gr2adOhnu37pGLwV/59w9LUl4x2NSBXyTCTT/WuCyynVaJ6gaUd5puFZLNBgvq0OTvIGt/rRt5DFkgXoKrjZaTPAxXchVbivMvD...

2021-04-30 22:12:31 223

原创 php版rsa以及rsa2签名的区别

1.都是使用openssl_sign,和openssl_verify函数,只是最后一个参数不同rsa为OPENSSL_ALGO_SHA1,rsa2为OPENSSL_ALGO_SHA256,下面是PHP本rsa签名实现类<?php//rsa和rsa2 PHP版签名生成以及验证类//$content,$signature,$publicKey,$type,$cont...

2021-04-30 14:02:59 617

原创 PHP实现AES对称加密

1.mcrypt 函数php的7以上已经废弃该方法,所以这里的aes是基于openssl_encrypt实现。代码如下 class Aes { public $key = ''; public $iv = ''; public function __construct( $config ) { foreach ( ...

2021-04-30 13:21:02 592

原创 记录一次php对接java接口rsa签名

1.对方提供的东西:test-pfx.pfx 密码:000000 xdzf_cfca_prd.cer xdzf_cfca_prd.cer这是一个公钥文件,可以通过notepad++打开,看见公钥内容,但是pfx文件无法直接打开,而且pfx文件还有一个密码,于是想把pfx文件里面的内容获取到。 2.使用php获取pfx里面的内容,打印出来,实验证明php是可以直接使用pf...

2021-04-30 05:16:33 268

原创 thinkphp5生产环境下关闭runtime下面的log

程序在开发测试阶段开启日志有利于发现问题,并且解决问题,那么如果部署到生成环境还开起日志记录就会产生大量的垃圾文件占用大量的硬盘空间。所以就需要我们关闭日志记录功能。 application/config.php 中知道log的配置如下: 'log' => [ // 日志记录方式,内置 file socket 支持扩展 'type' => 'te...

2021-04-29 05:53:50 1063

原创 php的rsa生成签名和验证签名方法

//处理参数function MakeSign_Params( $arr ) { ksort( $arr ); //按字典序排序参数 $buff = ''; foreach ( $arr as $k => $v ) { if ( $k != 'signValue' ) { $buff .= $k...

2021-04-25 21:21:10 715

原创 msyql时间戳函数用法

select unix_timestamp(now()); 结果是:1618394534select current_timestamp(); 结果是:2021-04-14 18:02:14select now(); 结果是:2021-04-14 18:02:14 实例:查询下单超过3分钟未付款的订单 $w...

2021-04-14 19:01:13 64

原创 msyql存储过程实现唯一不会重复订单号最佳实践

在订单系统中订单号不能重复,那么怎么才能高效的生成不会重复的订单号呢? 通过程序生成的订单号为了保证不重复要么就是很长,要么就是一堆没有什么实际意义的长字符串,而且为了保证不重复还得在数据库表字段做唯一约束很不友好,所以通过sql数据库存储过程生成唯一订单号,而且还能有一定规则的方法就很优雅。 第一步需要一个数据库表现导入进去: CREATE TABLE `generate_serialno`...

2021-04-02 20:22:57 271

原创 msyql触发器实践案例

案例 当学生表学生的分数发生变化时,利用触发器功能,自动记录学生分数变更记录 学生表的sql: CREATE TABLE `student` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL COMMENT '学生姓...

2021-04-02 11:47:23 80

原创 mysql数据库编写存储过程实现批量插入1000万条数据

第一步导入数据库表: CREATE TABLE `test_use` ( `id` int(11) NOT NULL, `name` varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci NULL DEFAULT NULL, `sex` varchar(255) CHARACTER SET utf8 COLLATE utf8_u...

2021-03-26 22:27:27 753

原创 win10下双击运行.bat文件,一闪而过

直接在cmd运行.bat里面的命令可以运行,但是双击.bat就是一闪而过,那么为什么会出现这样的问题呢,一般情况是.bat里面的命令,在双击运行的环境下出现了问题导致的。 所以想办法看见错误信息就能根据具体的错误解决问题了。./frpc.exe -c ./frpc.inipause 在.bat文件最后一行增加pause,表示暂停,就可以看到命令行中的报错信息了 根据错误信息做相应的修改就能...

2021-03-05 04:17:57 6171

原创 如何把emlog的css,js,字体,图片等迁移到阿里云oss提升网站加载速度

1.首先把content目录迁移到阿里云oss的bucket里面,然后给bucket绑定一个自己的域名,得到一个bucket域名。 例如我的是https://blog-static.wlphp.com/ 把content目录放到bucket的根目录即可,打个比方访问里面的某个css,https://blog-static.wlphp.com/content/templates/FLY/css...

2021-03-04 07:11:14 419

原创 网站引用阿里云oss里面的远程字体图标不显示解决方案

1.打开浏览器f12,console里面提示的是跨域请求错误。 2.登录阿里云控制台,找到oss控制面板,如下图找到跨域设置。 3.创建跨域规则。允许所有来源的所有请求的所有headers。 ...

2021-02-26 00:00:35 471

原创 php字节码缓存之opcache

PHP5.5 以后官方自带了一个组件叫 Zend Opcache,具体可以参看官方文档(https://www.php.net/manual/zh/book.opcache.php)。开启此扩展后可以提高 PHP 的执行效率。 Opcache是字节码缓存,PHP在被编译的时候,首先会把php代码转换为字节码,字节码然后被执行。php文件第二次执行时,同样还是会重新转换为字节码,但是很多时候,文...

2021-02-24 19:24:55 181

原创 php-fpm的重启方法

php 5.3.3 以后的php-fpm 不再支持 php-fpm(start|stop|reload)等命令,所以不在介绍旧的方法,需要使用新的信号控制: INT, TERM 立刻终止QUIT 平滑终止USR1 重新打开日志文件USR2 平滑重载所有worker进程并重新载入配置和二进制模块 现在看下如何重启: 1.先查看php-fpm的master进程号 [root@iZ2ze1o1f17...

2021-02-24 11:28:53 1274

原创 Thinkphp5中使用.env模拟本地环境变量,让配置更优雅!

自从thinkphp5发布以来,可以说越来越优雅了,竟然支持.env配置文件啦!想必熟悉那个以优雅著称的某框架的同学一定不陌生。 支持多种配置格式thinkphp5支持的配置类型包括.ini、.xml、.json 、.yaml和 .php。 那么我们的.env就是采用ini方式的配置格式。用于在开发过程中模拟环境变量配置(该文件建议在服务器部署的时候忽略)。 配置.env在项目根目录(不是ap...

2021-02-24 06:48:51 1723

原创 windows下PHP安装Redis扩展不成功的可能原因

驱动下载地址: http://windows.php.net/downloads/pecl/releases/igbinary (在序列化和反序列化的效率上高于其自带的)可以不添加http://windows.php.net/downloads/pecl/snaps/redis 可以看到有很多版本,这时需要根据自己的情况进行选择,如果选择不对版本基本不会成功。可以通过phpinfo()...

2021-02-14 21:08:26 561

原创 gitee+宝塔实现本地代码svn提交到仓库之后自动同步到web站点教程

gitee又叫码云是和github类似的国内代码托管平台,之所有选择码云也是因为它在国内速度比较快,地址:https://gitee.com/ 宝塔是一款用python编写的服务器面板说白了就是先在服务器安装宝塔,然后通过宝塔管理服务器,同时给宝塔做个广告,宝塔是目前服务器面板里面做的最好的一款,没有之一,注册地址: 宝塔服务器面板,一键全能部署及管理,送你3188元礼包,点我领取https...

2021-02-13 07:40:41 314

原创 基于workerman的redis-queue实现异步邮件队列

实验场景:页面被客户访问发送邮件通知到我的邮箱,该场景只是为了测试,下单发送邮件或者短信的场景都是一样的,为了体现出来队列的优越性,我自己封装了个邮件发送的接口,接口内部实现增加了sleep(5),纯粹是为了给接口增加耗时,更好的达标实验效果。 workerman的redis-queue地址: https://github.com/walkor/redis-queue 自己封装的邮件发送接口...

2021-02-13 00:15:37 676

原创 树莓派3b+系统烧录完成后如何远程登录

在写入完成后,不必急于拔出SD卡,现在在电脑中可以看到一个名字为boot的分区(此分区为FAT32格式,并且容量会很小,这是正常的,在SD卡插入树莓派后,这个boot分区就是系统的/boot文件夹) 1.开启SSH现在的树莓派都是默认关闭SSH的,开启SSH只需要在boot下新建一个名为ssh的文件夹即可 2.xshell连接树莓派树莓派启动后,就可...

2021-02-12 22:13:40 226

原创 thinkphp5+mysql事务案例

mysql的表存储引擎必须是innodb,事务就是多条sql其中一个执行失败就回滚,都执行成功才一起提交。保证多条sql要么都执行成功,要么都不成功。但是事务并不能避免高并发带来的数据错乱问题。如何解决高并发带来的数据错乱问题会单独写一篇文章详细阐述。 如下是一个下单事务案例:1.一定要注意update语句返回受影响的行记录,如果受影响行为0,一定要手动抛出异常,在catch里面统一处理。2....

2021-02-12 21:57:29 180

原创 Ubuntu 20.10安装完成后,启动后无法进入桌面,黑屏光标闪烁

我的系统是ubuntu-20.10-desktop-amd64,启动后黑屏,然后按ctrl+alt+f2(或者f3、f4...)可以切换终端 原因之一是gdm3与nvidia冲突,是的gdm3无法正常显示图形界面,出现黑屏的问题。 切换到其他终端然后删除nvidia组件 sudo apt-get remove --purge nvidia-* 执行成功之后,执行reboot重启即可正常进入桌面...

2021-02-12 20:14:00 1781 2

原创 树莓派3b+安装Raspbian系统

树莓派烧录系统需要先下载树莓派系统镜像或镜像压缩包,再将SD卡插入电脑,用SDFormatter这个软件对SD卡的第一个盘(boot盘)进行格式化,再用Win32DiskImager这个软件选择img镜像文件进行系统的烧录。 软件点击下载:SDFormatter(格式化工具)https://www.sdcard.org/downloads/formatter/; Win32DiskImager...

2021-02-12 19:48:43 128

原创 解决高并发下insert到数据库表多条记录的问题

1.有种业务场景比如微信会员注册,我们首先判断openid在数据库表中是否存在如果存在则提示已经存在,否则注册一条会员记录。thinkphp5代码如下 $openid='1111111'; //查询openid是否存在 $info=Db::table('test')->where('openid',$openid)...

2021-02-12 13:40:23 526

原创 Ubuntu 20.10安装完成后,如何开启ssh被远程访问

Secure Shell (SSH) 是用于客户端和服务端之间安全连接的网络协议。服务端和客户端之间的每次交互均被加密。 本教程讲解了如何在 Ubuntu 系统上启用 SSH。 启用SSH服务将允许您远程连接到系统执行并管理任务。您还可以通过scp和sftp命令来传输拷贝文件。 在Ubuntu上启用SSH 默认情况下,当你安装完Ubuntu系统后,系统是不允许通过SSH进行远程访问的,您需要...

2021-02-12 10:59:55 747

原创 svn在linux服务器checkout报错

svn: E210007: Unable to connect to a repository at URL 'svn://gitee.com/wl2304/test1'svn: E210007: Cannot negotiate authentication mechanism 解决办法: 经过一系列的百度,都没有解决。后来经过翻墙谷歌,原来是服务器缺少cyrus-sasl cyrus-sas...

2021-01-05 22:57:11 239

原创 SVN / Git提交空目录 / 空文件夹问题解决方案

在windows操作系统下面用bat实现,遍历空目录然后给空目录添加空的index.html 代码如下新建一个.bat文件保存双击打开即可:@echo off&echo 查找空文件夹set dd=%~1if "%~1"=="" set/p dd=输入或拖入要查找的总文件夹:cd/d "%dd%"for /f "delims=" %%a in (...

2021-01-05 17:12:14 735

原创 JSONP原理及简单实现

一.解决前端js请求数据跨域问题的两个方案 1.jsonp 需要前端和后端共同协定 2.CORS 只需要服务端改动 二.先说CORS 下面用服务端用php代码说明 header("Access-Control-Allow-Origin: *"); *代表允许来自所有域名的请求,也可以单独指定域名比如header("Access-Control-Allow-Origin: http://ww...

2021-01-05 09:17:44 437

原创 阿里云oss如何被挂载到阿里云ecs上,实现内网高速数据备份与共享

ossfs能让您在Linux系统中,将对象存储OSS的存储空间(Bucket)挂载到本地文件系统中,您能够像操作本地文件一样操作OSS的对象(Object),实现数据的共享。 1.下载安装包。 以下载CentOS 7.0 (x64)版本为例: wget http://gosspublic.alicdn.com/ossfs/ossfs_1.80.6_centos7.0_x86_64.rpm...

2020-12-24 23:13:07 857

原创 阿里云新服务器(没有任何数据)在安装宝塔前挂载数据磁盘教程

本文中的磁盘/dev/vdb为笔者测试服务器上的命名,在您的服务器中可能是/dev/xdb、/dev/sdb、/dev/xvdb等等 请根据实际情况进行修改 1、创建挂载目录(www为宝塔默认安装目录) mkdir -p /www 2、确认是否没有分区的磁盘,如下图,没有分区的磁盘是/dev/vdb,在您的服务器中可能是/dev/sdb,请注意按照实际名称修改 fdisk -l ...

2020-12-19 05:28:08 334

微信支付&amp;支付宝支付的php源码精简版.zip(直接链接qq613154514沟通后在买)

包含支付宝手机支付,pc网站支付,微信pc扫码支付,公众号支付,h5扫码支付,以及微信退款,支付宝退款的demo,其中支付宝支付pc和手机支付只有一个参数不同所以做成了自适应的,一共是7个demo,5个支付2个退款。演示示例:(由于部分参数以及网页授权域名和支付授权目录的问题导致不可演示)https://demo.wlphp.com/(直接链接qq613154514沟通后在买)

2021-06-16

空空如也

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

TA关注的人

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