自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 mysql json数据类型 相关函数

mysql json相关函数

2023-10-24 15:02:27 325

原创 git submodule update --init 失败解决办法

我们在github上寻找开源项目的源码,clone下来研究的时候,由于项目需要多个开源项目的支持,所有还需要二次clone子工程的源码支持,比如最近在使用: grpc在clone子模块的时候会出现失败或无法访问的情况,其原因众所周知无非就是有些东西需要科学上网找到项目的.gitmodules文件,这个文件就是子工程的clone path 以及clone的位置:我们只需要找到url对应的可访问地址,这里给出两个结局的方案,也是我常用的方案:使用github镜像地址:https://githu.

2022-04-18 14:08:35 14782 2

原创 PHP(Laravel)作为客户端调用GRPC

本文章只描述使用php作为客户端调用grpc。官网链接: grpc官网php客户端链接: php-clent-grpc得有个php环境并且安装好grpc扩展,安装 protoc 与 grpc_php_plugin 可执行文件使用protoc 与 grpc_php_plugin 生成客户端代码调用1. php环境并且安装grpc扩展,这里就不赘述了,用pecl,源码安装,大家投其所好。2. 安装 protoc 与 grpc_php_plugin 可执行文件# 下载对应分支(对应版本的)g

2022-04-18 11:55:52 2151

原创 mac下 docker 挂载目录权限问题(operation not permitted)

在docker run 或者 docker-compose.yml 添加privileged:true,privileged的含义是让容器内的root拥有真正root用户的权限,否则它只是一个名为root的普通用户。但是在macos下,即使给到privileged参数,但是由于macos下有个sip安全机制(系统完整性保护),【以下为苹果官方介绍sip】sip是 OS X El Capitan 及更高版本所采用的一项安全技术,旨在帮助防止潜在恶意软件修改 Mac上受保护的文件和文件夹。系统完整性保护

2021-10-25 14:41:44 9323 5

原创 docker由于设定固定ip地址,在调试删除容器后再启动可能会出现目标网段已存在的问题

1.删除已有网络docker network ls (查看以创建所有网络)docker network inspect {NETWORK ID} (查看网段是否跟.env设置的网段一直)docker network rm {NETWORK ID} (删除网络)修改network subnet

2021-10-24 22:33:20 2850

原创 PHP 延迟静态绑定 static

首先我们定义一个DomainObject 父类abstract class DomainObject{ public static function create() : DomainObject { return new self(); } }在编写两个子类class Shop extends DomainObject{ }class User extends DomainObject{ }调用:User::create

2021-07-20 23:16:15 303 5

原创 postman设置环境变量(token)

在我们在编写完新的接口后,开心的打开postman进行测试接口时,都逃不过token 的验证,然后我们有屁颠屁颠的找到登陆的接口点击send,然后复制登陆接口返回的token值,黏贴到新接口的headers里?首先准备两个接口,一个登陆接口,一个业务接口。/login/doLogin 登陆/practical_training/practicalTrainingList。获取列表设置postman 环境变量下一步找到你的登陆接口...

2021-07-13 15:53:39 753 1

原创 PHP trait 的理解和使用

traittrait 是类似于类的结构,它本身不能被实例化,但合一混合到类中。trait中定义的任何方法都可以被使用它的类所使用。trait可以改变类的结构,但无法更改其类型。我们可以将trait视为包含到类中的部分。定义和使用trait这里的例子主要作用是去除重复代码//计算费率trait priceUtilitiesTrait{ private $taxRate = 10; public function calculateTax(float $price) : flo

2021-07-13 00:15:48 737 2

转载 git常用命令大全

git 常用命令1.git常用$ git remote add origin git@github.com:yeszao/dofiler.git # 配置远程git版本库$ git pull origin master # 下载代码及快速合并 $ git push origin master # 上传代码及快速合并$ g

2021-07-11 00:16:47 129

原创 redis 源码安装

redis 官网下载地址获取到地址打开你的命令行开干:#下载wget http://download.redis.io/releases/redis-6.2.4.tar.gz#解压tar zxvf redis-6.2.4.tar.gzcd redis-6.2.4makemkdir -p /usr/local/redis/bin#创建日志目录mkdir -p /usr/local/redis/log/cd src#拷贝文件cp redis-server redis-cli

2021-07-01 17:30:06 246

原创 xxxxxx 不在 sudoers 文件中。此事将被报告

linux系统中创建用户的命令为useradd 用户名例如:useradd laosun指定密码为:passwd 用户名例如:passwd laosun有时候我们需要用laosun这个用户运行root用户才有的执行权限时,要不su root 切换root用户执行,要不添加sudo 命令来给laoyun 用于赋予root权限,默认情况下,laosun账号是不具有sudo权限的,没有执行任何操作的情况下会出现:laosun不在 sudoers 文件中。此事将被报告。登陆root用户,查看..

2021-07-01 14:43:52 293

原创 php-fpm fastcgi 工作原理以及优缺点

什么是 CGI?CGI 全称是 “公共网关接口”(Common Gateway Interface),HTTP 服务器与你的或其它机器上的程序进行 “交谈” 的一种工具,其程序须运行在网络服务器上.CGI 可以用任何一种语言编写,只要这种语言具有标准输入、输出和环境变量。如 php,perl,tcl 等.之前我看见一篇文章里面对CGI解释的非常清楚,CGI 是为了保证 web server 传递过来额数据是标准的,方便 CGI 程序的编写者。再解释的通俗点就是 CGI 是一个协议,具有无语言..

2021-01-21 11:14:09 603

原创 elasticsearch 安装启动常见问题

问题一:Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000085330000, 2060255232, 0) failed; error='Cannot allocate memory' (errno=12)解决办法:由于es默认分配给jvm空间大小为2g,修改jvm分配空间为512m#vim config/jvm.options-Xms512m-Xmx512m问题二:[W

2020-12-24 16:28:15 519 1

原创 nano 命令总结

nano字符终端文本编辑器补充说明nano是一个字符终端的文本编辑器,有点像DOS下的editor程序。它比vi/vim要简单得多,比较适合Linux初学者使用。某些Linux发行版的默认编辑器就是nano。nano命令可以打开指定文件进行编辑,默认情况下它会自动断行,即在一行中输入过长的内容时自动拆分成几行,但用这种方式来处理某些文件可能会带来问题,比如Linux系统的配置文件,自动断行就会使本来只能写在一行上的内容折断成多行了,有可能造成系统不灵了。因此,如果你想避免这种情况出现,就加.

2020-12-04 16:59:40 1121

原创 laravel-admin admin用户恢复

由于误操作php artisan migrate,导致laravel-admin admin用户从数据库中删除,恢复有两种方式,1.重新安装laravel-adminphp artisan admin:install2.找到admin_user的填充文件:vender\encore\laravel-admin\src\Auth\Database\AdminTablesSeeder.phpphp artisan db:seed --class="Encore\Admin\Auth\D...

2020-11-07 16:06:32 585

原创 Syntax error or access violation: 1064 You have an error in your SQL syntax;

报错原因:Laravel 运行迁移文件时报错(添加外键约束时报错)SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'setnull' at line 1 (SQL: alt

2020-11-06 22:40:06 14541

原创 分享一篇阿里的mysql规范

一、建表规约 【强制】表达是与否概念的字段,必须使用 is_xxx 的方式命名,数据类型是 unsigned tinyint( 1 表示是,0 表示否),此规则同样适用于 odps 建表。 说明:任何字段如果为非负数,必须是 unsigned。 【强制】表名、字段名必须使用小写字母或数字;禁止出现数字开头,禁止两个下划线中间只出现数字。数据库字段名的修改代价很大,因为无法进行预发布,所以字段名称需要慎重考虑。 正例:getter_admin,task_config,level3_name

2020-11-06 17:29:08 119

转载 laradock安装使用以及常用命令

在您的计算机上的任何位置克隆此存储库git clone https://github.com/Laradock/laradock.git下载项目composer create-project --prefer-dist laravel/laravel XXXX ...项目安装安装 Laravel 安装程序composer global require laravel/installer创建软链接sudo ln -s $HOME/.config/composer/vendor/

2020-10-30 15:14:29 564

原创 composer 配置国内镜像源

作为php开发时常会使用conposer下载安装包,一般情况下,安装包的数据是从github上下载的,安装包的元数据是从packagist.org上下载的,国外的网站也就那样了,随时被‘墙’,不会科学上网就只能配置国内镜像源了,这里我们使用aliyun的,以下是全局配置的:composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/去掉-g参数就是针对当前项目配置。当然也可以直接在.compose

2020-10-27 16:48:28 1293

原创 vagrant常用命令(1024姿势混标)

$ vagrant init # 初始化$ vagrant up # 启动虚拟机$ vagrant halt # 关闭虚拟机$ vagrant reload # 重启虚拟机$ vagrant ssh # SSH 至虚拟机$ vagrant suspend # 挂起虚拟机$ vagrant resume # 唤醒虚拟机$ vagrant status # 查看虚拟机运行状态$ vagrant destroy ...

2020-10-24 23:51:49 107

原创 mac安装brew以及解决curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused

首先说一下brew是macOS上的包管理工具,类似于centos里的yum,ubuntu里的apt,php的composer

2020-10-23 21:42:09 428

原创 PHP 四大排序 思路及代码

​$arr = [23,43,1,2,41,567,32,11];//冒泡排序//思路:比较数组相邻的两个元素,把小的放在前面,以此类推遍历完所有元素function bubble_sort($arr){ $count = count($arr); if($count<1) return $arr; for($i=0;$i<$count;$i++){ for($j=$i+1;$j<$count;$j++){ if(.

2020-10-19 15:33:28 114

原创 PHP Warning: require(): open_basedir restriction in effect

Laravel框架:PHP Warning: require(): open_basedir restriction in effect(nginx日志报的错)具体保存信息如下:保错原因是:前几天测试windows的子系统ubuntu环境(lnmp一键安装,为了方便安心省事,哈哈哈)安装好准备跑一下项目,Laravel框架写的一个视频网站,报500错误。根据报错信息我们可以很明确的知道这是php open_basedir 配置的问题,PHP不能引入其授权目录上级及其以上的文件;这个问题绝大部分是服.

2020-09-22 15:15:59 1181

原创 windows的子系统Ubuntu以及Windows Terminal的使用

安装Windows Terminal

2020-09-18 16:32:44 2426

原创 composer 报错 : PHP Fatal error: Allowed memory size of 1610612736 bytes exhausted

composer 安装laravel扩展时报PHP Fatal error: Allowed memory size of 1610612736 bytes exhausted (tried to allocate 4096 bytes) .原因是php默认的内存限制为128M,解决办法就是,打开php.ini,搜索memory_limit将其设置大一点,256M?1024M?2048M?-1(代表不限制),可以跟根据自己的服务器配置来选择,然后重启php-fpm,ok。...

2020-09-14 10:31:44 2689

原创 (CentOS7) Linux编译编译安装ffmpeg

安装过程: 下载安装源,配置,编译,安装,设置环境变量。# wget http://www.ffmpeg.org/releases/ffmpeg-4.3.tar.bz2# tar --jxvf ffmpeg-4.3.tar.bz2# cd ffmpeg-4.3# ./configure --prefix=/usr/local/ffmpeg# make && make install安装少则三五分钟,多到十多分钟# vi /etc/profile在最后PATH添加环境变

2020-09-10 16:15:09 229

原创 Laravel 安装扩展 publish失败(pbmedia/laravel-ffmpeg)

因为在做视频转码业务,选择ffmpeg扩展,laravel版本是5.8,php版本7.3,然后就到https://packagist.org/上去找然后直接选择laravel版的ffmpeg,经筛选只有4.0版本支持laravel5.8然后跟着文档安装配置:这里注意加上版本如composer require pbmedia/laravel-ffmpeg:4.0.0安装看上去很简单:composer require -> app.php 加上ServiceProviders

2020-09-09 17:24:42 424

原创 linux服务器重启后导致redis数据丢失

直接上解决方案:1.找到 /etc/sysctl.confvim /etc/sysctl.conf2.在最后一行添加vm.overcommit_memory = 13.wq保存,用sysctl -p 使配置生效sysctl -p会返回添加的那一行,说明添加成功。以后linux服务器在重启,redis的数据就不会丢了。...

2018-11-27 20:18:31 2864

原创 微信接口签名及调用流程详解

在调用微信接口的时候无论是支付还是现金红包等等接口都会用到接口的加密和校验,微信的很多数据签名和调用规则其实都是一样的,首先构建原始数据,然后根据规则去除空值和签名方式(如果与的话),接下来案子点排序后转换为URL格式的字符串,拼接上加密的key,然后生成签名。接下来就是按照规则调用接口了,这里先说一下加密调用的流程,还是看流程图更直观一点。下面给出微信签名算法的PHP代码:class ...

2018-09-27 18:51:05 2326

原创 基于PHP的CURL的RESTful风格实现POST字符串或文件上传

目前不管是移动端的API还是调用众多服务商(微信、微博、银行等)的接口大多数都是基于RESTful风格。下面就介绍如何使用PHP基于RESTful风格上传文件或POST字符串。上传文件代码示例:$url = '提交地址';//$postfields = file_get_contents('文件路径或者文件名'); $ch = curl_init();$params[CURLOPT...

2018-09-27 18:50:15 411

原创 PHP数组和XML相互转换的函数

//数组转xmlfunction ArrToXml($arr){ if(!is_array($arr) || count($arr) == 0) return ''; $xml = "&lt;xml&gt;"; foreach ($arr as $key=&gt;$val) { if (is_numeric($val)){ $xml.="&lt;".$key."&gt;...

2018-09-27 18:41:56 199

原创 PHP使用curl请求https站点的常见错误及解决方案

使用curl请求http站点和https站点最大的不同就是https站点有证书验证这一环节,如果证书验证不通过则无法发起请求,不管是请求什么类型的站点遇到问题时先把错误码打印出来看一下,打印错误码的代码片段如下:$error = curl_errno($ch); //其中$ch为curl_init();返回的句柄print_r($error);然后根据错误码找出错误,错误码对照表可参考...

2018-09-27 18:38:50 3501

原创 CURL错误码表

在使用PHP调试CURL程序是如果报错,下面是CURL错误码对应的原因说明,如果遇到程序错误可以参考此错误码表。状态码 状态原因 解释 0 正常访问   1 错误的协议 未支持的协议。此版cURL 不支持这一协议。 2 初始化代码失败 初始化失败。 3 URL格式不正确 URL 格式错误。语法不正确。 4 请...

2018-09-20 09:44:46 1208

原创 MySQL中的严格模式

      很多集成的PHP环境(PHPnow WAMP Appserv等)自带的MySQL貌似都没有开启MySQL的严格模式,何为MySQL的严格模式,简单来说就是MySQL自身对数据进行严格的校验(格式、长度、类型等),比如一个整型字段我们写入一个字符串类型的数据,在非严格模式下MySQL不会报错,同样如果定义了char或varchar类型的字段,当写入或更新的数据超过了定义的长度也不会报错。...

2018-09-20 09:35:18 360

原创 JS设置和读取COOKIE

我们知道COOKIE保存在客户端,但是我们在设置和读取COOKIE的时候几乎无论使用什么语言编程都是在服务器端操作的,原理是通过HTTP的header传输信息。其实客户端的脚本语言JavaScript也是可以操作COOKIE的,默认情况下服务器端设置的COOKIE数据也是可以操作的,下面给出封装好的函数。 /*设置cookie*/ function setC...

2018-09-19 15:23:30 314

原创 微信公众号支付提示调用JSAPI缺少参数:timeStamp的解决方案

       在调试微信公众号支付时遇到了一个比较诡异的问题,在安卓手机上完全正常,但是同样的代码在苹果设备上就不行,iphone和ipad都测试过也是报同样的错误调用JSAPI缺少参数:timeStamp。开始打印了一下数据发现生成的json数据中是有时间戳这个参数的,但是为什么在IOS上就不行呢。规则完全是按官方文档规则写的,不然Android手机上也不会顺利支付了。 最后再查阅了一下...

2018-09-19 15:01:52 4367

原创 PHP phpmailer发送电子邮件

首先要说的就是: phpMailer是一个非常强大的php发送邮件类,可以设定发送邮件地址、回复地址、邮件主题、html网页,上传附件,并且使用起来非常方便。phpMailer的特点: 1、在邮件中包含多个 TO、CC、BCC 和 REPLY-TO。 2、平台应用广泛,支持的 SMTP 服务器包括 Sendmail、qmail、Postfix、Gmail、I...

2018-09-19 10:17:07 557

原创 PHP判断是否为微信、支付宝等移动设备访问代码

  在开发过程中经常遇到根据不同的设备显示不同的数据或者在页面样式上做不同的布局,另外在做支付接口的时候也可能会判断当前是什么设备访问,例如判断如果是微信内置浏览器访问则只启用微信支付功能,如果是支付宝内置浏览器访问也是类似的处理方式,那么如何判断当前访问的设备呢,通常使用的方式是通过请求头信息中的HTTP_USER_AGENT来判断,例如微信访问在USER_AGENT中就会带有MicroM...

2018-09-19 10:09:00 362

原创 PHP使用CURL携带ssl证书和秘钥请求接口代码

       在使用PHP请求某些接口的时候通常会使用到CURL的方式,不管是http还是https都是支持的,如果请求https遇到的问题可能比较多一点,可参考《PHP使用curl请求https站点的常见错误及解决方案》,另外有些接口可能会要求携带证书请求接口,例如微信支付的某些接口需要使用证书来请求,那如何实现呢?其实也不难,下面给出PHP代码:function postData($ur...

2018-09-19 10:03:09 1951

空空如也

空空如也

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

TA关注的人

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