PHP
文章平均质量分 71
php
Bennett_G
发现光 追随光 成为光 发散光
展开
-
OAuth2.0 的理解
OAuth是一个关于授权(authorization)的开放网络标准,在全世界得到广泛应用,目前的版本是2.0版。本文对OAuth 2.0的设计思路和运行流程,做一个简明通俗的解释,主要参考材料为RFC 6749。一、应用场景为了理解OAuth的适用场合,让我举一个假设的例子。有一个"云冲印"的网站,可以将用户储存在Google的照片,冲印出来。用户为了使用转载 2017-11-11 11:38:42 · 1459 阅读 · 0 评论 -
thinkphp5在lnmp1.4集成环境修改根目录后,出现500错误
修改nginx根目录到thinkphp5的public下,通过域名或者IP访问,出现500错误解决方法:1、先打开php的错误提示 将 php.ini中的 display_errors = Off 修改为 On; 这时在访问,出现以下提示:PHP Warning: require(): open_basedir restriction in effect. File(/home/www...原创 2018-03-23 19:52:47 · 3552 阅读 · 0 评论 -
thinkphp5 在nginx下的配置(lnmp1.4一键安装环境)
本地用的环境是Apache,将项目上传至服务器后,发现不能访问,然后就在网上查找各种资料,添加各种配置,同时也出现各种报错,access deiny , file not found 等,最后发现让nginx支持pathinfo仅仅只需要配置几个选项就可以了。服务器用的lnmp(1.4)的一键安装包配置的环境(如有小伙伴服务器也是同样的环境,配置请参看如下,亲测适用)1、修改php.ini ...原创 2018-03-22 12:17:56 · 1995 阅读 · 0 评论 -
关于ThinkPHP5 的request()接收图片上传问题
在做项目的时候用到tp5,使用webuploader插件上传图片缩略的时候,发现使用request()->file('filename'),获取不到file的信息,在网上查了后,最终解决。为避免其他人踩坑,分享如下:1》request->file('filename')是针对form表单提交的,先需增加form属性enctype=multipart/form-data2》确认php上传文件原创 2017-12-04 11:04:33 · 11115 阅读 · 1 评论 -
TP Session获取不到解决方法
在改遗留项目时,发现使用的为ThinkPHP3.1版本,项目中使用模块分组,问题说明:两个分组(举例):Home 、Base,在Base中设置 session('key') = 'aaa',但是在Home下获取session时值为null百思不得其解,最后尝试多次,均无效果。今天无意间在tp的官方网站讨论模块看到:tp6获取不到设置的session??官方回复为:session写入...原创 2019-11-21 09:40:19 · 3187 阅读 · 1 评论 -
实战-基于laravel的rbac扩展包的开发与发布
实战-基于laravel的rbac扩展包的开发与发布前提准备工作创建扩展包目录合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入前提在项目发开过程中经常会更换不同的框架,每次在使用新的框架的同时,虽然已经有很多基于后台权限的二次封装,但是除原创 2021-03-02 14:23:50 · 539 阅读 · 1 评论 -
Docker系列学习 -- (二)多容器构建web基础环境(php+mysql+nginx)
官方镜像仓库:一、MySQL:二、Nginx:三、PHP:四、重要的步骤!重要的步骤!重要的步骤!重复三遍无、注意事项原创 2020-07-01 18:34:33 · 3283 阅读 · 0 评论 -
PHP通用简单可逆加密
在项目中需要一些简单可靠的可逆加密算法,以下为具体代码,供大家参考也是为了做个记录~function ParamEnOrDecode($string, $operation = 'DECODE', $key = '', $expiry = 0) { // 动态密匙长度,相同的明文会生成不同密文就是依靠动态密匙 $ckey_length = 4; //...转载 2019-11-19 16:58:25 · 1860 阅读 · 0 评论 -
快速入门Lumen5.8+dingo2.2+lumen-passport鉴权client_credentials
使用lumen进行api开发,实现api的鉴权,查找到的文档基本上都是password的模式验证,千篇一律,详细如何请求,如何验证都一笔跳过,本人在实践过程中踩了不少坑,所以编写此篇文章,希望其他同学勿再入同样的坑。一、安装Lumencomposer create-project --prefer-dist laravel/laravel app_name配置应用秘钥 在...原创 2019-09-27 16:57:12 · 3251 阅读 · 0 评论 -
阿里云OSS获取文件强制下载的签名URL
需求:视频文件在后台可预览,可下载。目前难题:在点击下载时,OSS的签名url在浏览器中会直接播放,不提示下载原因 :OSS在上传时未指定文件元信息。官方推荐,指定文件元信息 ‘Content-Disposition' => 'attachment; filename="xxxxxx"',来实现文件的强制下载。但是这和实际需求产生冲突。解决方案:获取OSS的签...原创 2019-09-16 19:32:23 · 8027 阅读 · 1 评论 -
thinkphp5 中使用阿里云的短信服务
在项目中用到阿里云的短信服务,在使用阿里云提供的SDK后,踩了很多坑,费尽九牛二虎之力才调试成功。为方便大家快速方便的使用sdk,将我自己封装的短信调用方法提供如下,方便大家参考:1. 请自行下载php的sdk2.创建短信签名、短信模板,云资源使用的子账号并分配相关权限3、将SDK中api_sdk文件夹重命名后放入thinkphp5的extends目录下4、在conmmon.php中创建公共方法s...原创 2018-02-28 16:59:50 · 5289 阅读 · 0 评论 -
PHP 关于数组和json的相互转换
今天在项目的时候,发现在解析json_decode的时候,发生错误.后来仔细查看php关于php的json_encode()和json_decode()两个函数,发现:1、数组转换json(数组为索引数组) array('a','b') ------>json_encode()---------->['a','b'] 结果会转换为json数组2、数组转换json(数组为关联...原创 2018-02-26 19:41:11 · 1844 阅读 · 0 评论 -
unserialize(): Error at offset 0 of 96 bytes出现的原因分析以及解决方法
出现问题: 从数据库中取出数据后进行反序列化后,php报错 unserialize(): Error at offset 0 of 96 bytes;分析原因:英文数据中含有中文字符串,所以我们就可以想到编码的问题,serialize()函数对在不同编码下对中文的处理结果是不一样的。再讲gbk转换成utf8的格式后,每个中文的编码数从2个会增加到3个,所以会导致反序列化的时候判断字符长度...转载 2018-01-12 10:39:58 · 28440 阅读 · 6 评论