自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 微信公众号开发配置url提示token验证失败(http可以,https失败)

最近在开发微信公众号的时候遇到一个问题。以前服务器使用的是80端口的http协议,后来遇到需求更改为443的https协议。在重新配置微信公众号url时token一直提示验证失败,明明证书没有过期,外网也可以访问,缺一直提示token一直提示验证失败。在网上搜索一堆全是如何配置,却没有关于这个报错的解决方案。没办法,总得自己解决,然后打开NGINX的响应日志,一条一条看最终发现错误所在这是http状态下的微信的访问请求这是https状态下的微信的访问请求通过图片(访问日志)可以很明显的看出

2020-12-23 15:35:07 4541 5

原创 php 读取mysql的double类型小数点不对

最近用php读取浮点型数据的时候遇到了一个bug。数据库采用的是以double类型存储的浮点型数据。但使用php不对数据采取任何处理后读取出来后数据却发生了变化上网查询资料后,使用了decimal 类型存储后恢复正常,如果存储的数据范围超过 decimal 的范围,建议将数据拆成整数和小数分开存储。并发现mysql的float 和 double 在存储的时候,存在精度损失的问题,很可能在值的比较时,得到不正确的结果。单精度类型float和双精度类型double在计算机中存储的时候,由于计算机只能

2020-09-23 17:35:03 707

原创 mysql join查询字符集不一致导致报错

在写一个join报了一个错误,在此记录一下。报错信息如下Illegal mix of collations (utf8mb4_0900_ai_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLICIT) for operation '='后来网上查询了一下原来是sql排序规则不一样,在此记录一下错误。使用navicat修改一下排序规则就行了。参考网址文献1文献2...

2020-08-27 16:32:27 741

原创 workerman+PHP制作一个简单且简陋的web聊天室

workerman是一个高性能的PHP socket 服务器框架,workerman基于PHP多进程以及libevent事件轮询库,PHP开发者只要实现一两个接口,便可以开发出自己的网络应用,例如Rpc服务、聊天室服务器、手机游戏服务器等。workerman的目标是让PHP开发者更容易的开发出基于socket的高性能的应用服务,而不用去了解PHP socket以及PHP多进程细节。 worker...

2019-11-16 10:26:02 813

原创 PHP判断是手机微信内置浏览器还是外部浏览器

代码如下 if ( strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger') !== false ) { echo '微信内部浏览器打开'; }else{ echo '外部浏览器打开'; }

2019-11-16 09:50:38 283

原创 Cookie 的 SameSite 属性

今天在做前后端分离姓名的时候遇到了这样一个问题。设置了与跨站点资源http://www.****.com/关联的cookie,但没有设置' SameSite '属性。在未来的Chrome版本中,只有当跨站请求设置为“SameSite=None”和“Secure”时,才会发送cookie。您可以在应用程序>存储> cookies下查看开发工具中的cookie,并在https://www...

2019-10-09 14:37:33 57682 20

原创 redis 的雪崩、穿透和击穿?redis 崩溃之后会怎么样?

了解什么是 redis 的雪崩、穿透和击穿?redis 崩溃之后会怎么样?系统该如何应对这种情况?如何处理 redis 的穿透?缓存雪崩对于系统 A,假设每天高峰期每秒 5000 个请求,本来缓存在高峰期可以扛住每秒 4000 个请求,但是缓存机器意外发生了全盘宕机。缓存挂了,此时 1 秒 5000 个请求全部落数据库,数据库必然扛不住,它会报一下警,然后就挂了。此时,如果没有采用什么特别的方...

2019-10-04 15:31:01 562 3

转载 概述同步/异步/阻塞/非阻塞/BIO/NIO/AIO

常规的误区假设有一个展示用户详情的需求,分两步,先调用一个HTTP接口拿到详情数据,然后使用适合的视图展示详情数据。如果网速很慢,代码发起一个HTTP请求后,就卡住不动了,直到十几秒后才拿到HTTP响应,然后继续往下执行。这个时候你问别人,刚刚代码发起的这个请求是不是一个同步请求,对方一定回答是。这是对的,它确实是。但你要问它为什么是呢?对方一定是这样回答的,“因为发起请求后,代码就卡住不...

2019-10-04 15:21:15 128

原创 TP5之事务回滚

熟悉mysql的应该都知道MySQL innodb的事务及其他的四大特性,持久性,隔离性,原子性,一致性。原子性—在执行一组有特定逻辑的sql指令时,要么全部执行成功,要么全部不执行。只要其中一个指令执行失败,所有的指令都执行失败,数据进行回滚,回到执行指令前的数据状态。事务的原子性在很多场景都需要用到,如进行一组多对多关系的数据表时,而在tp5中也仅需几行代码就可以解决。Db::start...

2019-09-27 17:41:16 1338

原创 php前后端分离项目跨域问题解决办法

现在项目越来越流行前后端分离,但最近在前后端分离的项目中遇到一个问题,获取session里面存入的用户信息总是为null,这是因为实现了前后端分离后跨域导致了会话不一致,由于之前一直没有做过前后端分离项目,导致走了不少弯路,而且还采用了多种及其不优雅的方法1.(在第一次请求的时候把服务器返回的session id保存起来(cookie),后续请求的时候把该session id作为参数传递给后端,...

2019-09-26 22:22:24 1617

原创 PHP使用mysqli函数生成数据字典

我们做开发的时候 ,也许经常会遇到对数据库分析,做一个数据字典,下载数据库字典工具太麻烦,那么我们可以用php的函数mysqli函数生成数据字典。效果如下那么接下来直接上代码,只需要改几个简单的参数就可以了。<?php/** * 生成mysql数据字典 *///配置数据库$dbserver = "数据库地址";$dbusername = "用户名";$dbpasswo...

2019-07-16 13:19:13 418

原创 windows下PHPStudy集成环境升级MySQL数据库版本

phpstudy是一个很不错的集成开发环境,提供了很多PHP和Apache、nginx等web服务器各个版本之间的组合。但是,美中不足,phpstudy直至2018版本,其中使用的mysql一直都是5.5版本,而且没有提供设置和升级的地方,而公司提供的数据迁移文件很多都是需要mysql5.7版本的,单独去安装一个mysql又觉得不方便。很多人都疑惑该如何升级数据库,而且百度搜索中的大部分方法都很复...

2019-06-26 02:08:59 780

原创 数据库字符集utf8和utf8mb4的详细区别

最近我遇到了一个bug,我试着通过Rails在以“utf8”编码的MariaDB中保存一个UTF-8字符串,然后出现了一个离奇的错误:Incorrectstringvalue:‘\xF0\x9F\x98\x83<…’forcolumn‘summary’at row1我用的是UTF-8编码的客户端,服务器也是UTF-8编码的,数据库也是,就连要保存的这个字符串“ <…”也是合法的UTF...

2019-04-17 21:01:57 8640

原创 windows phpstudy配置https

SSL证书,用于加密HTTP协议,也就是HTTPS。随着淘宝、百度等网站纷纷实现全站Https加密访问,搜索引擎对于Https更加友好,加上互联网上越来越多的人重视隐私安全,给网站添加SSL证书似乎成为了一种趋势。SSL 证书级别分为三种类型,域名型SSL证书(DV SSL)、企业型SSL证书(OVSSL)、增强型SSL证书(EVSSL)域名型 SSL 证书(DV SSL - Domain...

2019-04-07 00:10:56 1020

原创 php实现支付宝二维码支付

下面是代码<?phpheader('Content-type:text/html; Charset=utf-8');/*** 请填写以下配置信息 ***/$appid = '*******'; //https://open.alipay.com 账户中心->密钥管理->开放平台密钥,填写添加了电脑网站支付的应用的APPID$notifyUrl = '*******';...

2019-04-06 21:46:15 6211 4

原创 php 实现微信二维码支付

代码如下<?phpheader('Content-type:text/html; Charset=utf-8');$mchid = '*******'; //微信支付商户号 PartnerID 通过微信支付商户资料审核后邮件发送$appid = '*******'; //公众号APPID 通过微信支付商户资料审核后邮件发送$apiKey = '********'...

2019-04-02 09:07:01 2848 1

转载 一个php文件解决微信菜单接入

这里是代码<?phpheader('Content-type:text/html; Charset=utf-8');$appid='******'; //你的appid$appsecret='******'; //你的app密钥$wx = new WxService($appid,$appsecret);$data[0]['name'] = array('菜单1','#'...

2019-03-31 19:23:57 660

原创 windows下安装rabbitmq以及php扩展amqp

先安装RabbitMQ安装RabbitMQ前要先安装Erlang 下载地址http://www.erlang.org/downloads我选的是64位 这个根据自己情况下载,双击安装之默认安装即可 安装完成后 配置环境变量 ERLANG_HOME C:\Program Files (x86)\erl5.9 //C:\Program Files (x86)\erl5.9 你的...

2019-03-17 16:33:57 1392

原创 Rabbitmq基本原理

初识RabbitMQMQ全称为Message Queue, 是一种分布式应用程序的的通信方法,它是消费-生产者模型的一个典型的代表,producer往消息队列中不断写入消息,而另一端consumer则可以读取或者订阅队列中的消息。它接受和转发消息。您可以将其视为邮局:当您将要发布的邮件放在邮箱中时,您可以确定邮件先生或Mailperson女士最终会将邮件发送给您的收件人。在这个类比中,Rabbi...

2019-03-16 16:24:08 306

原创 windows下php安装redis扩展

redis安装完成后,还需要安装php扩展才能在php中运行。(0)先用php查看信息(1)下载php_igbinary扩展,下载地址:php_igbinary扩展,按照自己的版本下载。下载后,将压缩包中的php_igbinary.dll文件放入,PHP安装目录中的ext目录。(2)下载php_redis扩展,下载地址:redis扩展下载,按照自己的版本下载。下载后,将压缩包中...

2019-03-13 19:09:42 161

原创 php nginx负载均衡简单配置

首先打开nginx的安装目录,打开nginx.conf,配置以下需要多台服务器#在upstream中常用的配置项#down:表示当前的server不參与负载均衡。#weight:默觉得1,weight越大,负载的权重就越大。#max_fails :请求失败的次数默觉得1。#fail_timeout : max_fails次失败后,暂停请求此台服务器的时间。#backup: 其他全部的...

2019-03-13 11:41:50 809

原创 同局域网内使用Navicat访问别的mysql

直接在命令行或新建查询执行命令grant all privileges on *.* to root@&quot;%&quot; identified by 'admin' with grant option;//grant all privileges代表所有用户//%代表所有ip//root账号 admin是密码 自行替换...

2019-03-12 11:00:36 2951

原创 php实现QQ第三方登录

php

2019-03-09 14:49:46 1127

空空如也

空空如也

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

TA关注的人

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