ThinkPHP
SolKnight
永远相信美好的事情即将发生
展开
-
TP5.1将文件上传至七牛云对象存储
首先通过composer下载七牛云提供的php版本sdkcomposer require qiniu/php-sdk然后在需要使用的类中引入vendor目录下的autoload.php,推荐使用ENV门面类获取绝对路径方式引用:use think\facade\Env;require Env::get("vendor_path").'/autoload.php';use Qiniu\A...原创 2020-02-19 18:25:54 · 610 阅读 · 1 评论 -
TP5.1接入小米推送SDK并推送消息到手机
首先进入小米开放平台下载PHP版本的SDK(点我进入下载页),下载后将压缩包内的php→sdk中的所有文件复制到TP5.1项目中extend中的子目录mipush中(mipush是我自己新建的空文件夹,名字随便起)SDK成功放入项目后我们要在需要使用的地方引入以下autoload.php即可,xmpush中的类都已经配置好了命名空间无需处理。这里推荐使用TP5.1提供的Env获取extend路...原创 2020-02-08 01:59:39 · 911 阅读 · 0 评论 -
TP5.1使用PHPmailer发送邮件及实战
邮件发送是项目中很常用的功能,可用作给用户发送邮箱验证码,也可用作用户工单提交,甚至可以在项目运行中发生异常时将异常信息或者作为计划任务将一段时间内的执行日志发送至运维/开发人员。这里将使用PHPmailer为例记录一下在TP5.1中从装包配环节到实现功能的过程。一、首先要确定你的PHP环境是否开启了openssl,打开你的PHP安装目录的php.ini中搜索php_openssl.dll,若e...原创 2019-11-16 16:33:59 · 1868 阅读 · 1 评论 -
TP5.1后台多条件搜索查询+原生分页保留搜索条件
首先贴上后台页面相应模块的列表页效果以及多条件搜索的表单代码前端模版采用Xamdin1.0+Layui1.0,有需要请自行下载引入。<form class="layui-form x-center" id="searchform" action="{:url('index/user/search')}" method="post"> <div class="layu...原创 2019-11-07 14:43:15 · 1078 阅读 · 0 评论 -
TP5.1使用创蓝短信实现验证码的发送以及频控
代码较多所以就不做过多的文字说明了,部分说明直接作为代码注释,有问题可以评论提出用于存放短信发送日志的数据表结构: //接口返回Json数据 public function jsonOk($data='',$code=200,$msg="请求成功"){ return Json(array("code"=>$code,"msg"=>$msg,"data"=>$da...原创 2019-10-10 14:25:07 · 817 阅读 · 0 评论 -
TP5.1接入支付宝实现网页/APP支付完整请求回调流程(沙箱环境)
目前互联网项目如果涉及到第三方支付模块,那么支付宝/微信无非是最好的选择,此文先以支付宝为例讲解,想了解微信支付的可以看我之后的文章,当然支付也分很多种形式,比如扫码付、当面付、声波付、调用APP付,网页直接付等等。但最常用的形式还是服务端+APP+调用支付宝APP或服务端+网页扫码/调用支付宝APP/直接支付,所以接下来我就以ThinkPHP5.1作为服务端从接入SDK到实现支付请求以及回调业务...原创 2019-08-27 17:40:09 · 5988 阅读 · 4 评论 -
TP5.1使用Redis以及Windows配置Redis环境(超详细0难度)
Redis是典型的NoSql(非关系型数据库)之一,他是一个高性能的Key-Value数据库。它支持数据的持久化,官方测试读的速度是110000次/s,写的速度是81000次/s ,由于Redis提供了键过期的功能,所以现在被广泛用于缓存,合理运用缓存不仅可以提升站点访问速度还可以大幅降低数据库压力。下面我会从0开始讲解如何在你的Windows下配置好Redis环境以及Redis在TP5.1...原创 2019-08-12 17:50:20 · 3289 阅读 · 0 评论 -
TP5 API开发自定义异常类+后台/API通用异常处理方案
TP5/TP5.1框架自带的异常抛出模板内容十分丰富,不仅可以得到准确的错误信息还可以定位到错误行数、代码,以及接收到的各项数据,但是这往往是开发过程中用于排查错误的方式之一,但是开发API中我们在异常处理过程中不可能将这种Html的错误信息返回,那么就需要一种方式可以很方便的用于处理各种异常抛出,例如API请求中异常抛出返回JSON,想要调试时可以返回Html给开发者,再或者是项目正式上线后同样...原创 2019-08-23 11:13:22 · 1036 阅读 · 0 评论 -
TP5使用PHPExcel将数据动态导出为Excel表格
数据表导出为Excel是CMS系统中很常见的功能,PHPExcel即使已经被作者停更但是依然是一个很好的选择,首先要知道的是PHPExcel不支持Composer下载,所以我们需要去Github中手动下载并导入到TP5框架中。可以点我下载。下载好压缩包解压出来后找到Classes中的PHPExcel文件夹和PHPExcel.php,我们只需要这两个文件,接下来打开你项目中的vendor目录,在里...原创 2019-08-23 16:26:00 · 989 阅读 · 0 评论 -
TP5.1+Layui实现文件(图片为例)异步上传以及上传图预览
本文讲解将以实际开发项目中后台添加用户模块中使用到的Layui异步文件上传以及上传图预览功能为例如果不想Listen Talk只想Show Me Code的话直接拉到文章最后我将贴上添加用户模块完整的模版文件和控制器相应方法代码首先贴张图看一下实际效果:此模块使用的是Layui的样式,接触过Layui的应该知道Layui自带的文件上传功能无法随表单其他元素一起提交给服务器,所以这里需要...原创 2019-08-07 11:27:46 · 3140 阅读 · 4 评论 -
TP5.1框架下给H5中日期时间选择器datetime-local设置默认值
在H5中我们可以通过将input标签的type属性设置为“datetime-local”的方式来获取一个可以精确到小时分钟的简易日期时间选择器,但是实际需求中往往需要设置一个默认值,比如将选择器设置为当前时间或者在编辑界面中设置数据库中已有的时间戳数据,此时如果直接通过TP5.1模板变量的时间戳转换赋值value则无法将时间设为选择器的默认值。以下是将获取到的时间戳转换格式后直接赋值给选择器后的...原创 2019-08-02 15:04:28 · 3474 阅读 · 0 评论 -
TP5.1修改默认跳转方法(success,error)的模板页面和跳转时间
有使用过TP5的一定对这个界面不陌生,因为这是框架自带的跳转方法(success,error)界面,但是出于业务需求我们往往需要对这个界面进行美化修改,本文就说明一下如何修改TP5.1框架中的默认跳转页面、修改自动跳转时间、修改全局默认跳转时间首先我们打开框架目录中的config/app.php,这个文件存放着框架应用配置,在app.php末尾部分可以找到这样两个配置项:// 默认跳转页面对...原创 2019-08-08 10:29:35 · 3954 阅读 · 0 评论 -
TP5.1使用JWT进行Token令牌生成与验证
传统互联网项目在实现保持登录状态、退出登录、接口请求等功能时会使用Session,但是众所周知Session数据在产生后会存储与服务器端,所以当用户量达到一定程度会相应影响到服务器的性能,且Session在前后端分离的项目中或是多服务器项目中的支持不是很好。但是Token不会产生这些问题,服务器端对Token只有生成和验证操作,不会存放数据,针对前后端分离的项目,包括手机APP和当前热门的小程序的...原创 2019-08-05 16:24:21 · 9094 阅读 · 0 评论 -
TP5.1框架中百度富文本编辑器UEditor的使用
在实际项目开发中最常使用到的工具之一就是富文本编辑器,使用富文本编辑器可以实现所见即所得的效果,且所有富文本编辑器里的内容(包括图片,视频,音乐等文件)全部可以带格式的存入数据库中且只需占用一个字段。当前市面上有许多可供选择的富文本编辑器,虽然百度的UEditor已在2016年即停止更新且界面风格较老,但是其属性,功能十分强大,所以仍是当前富文本编辑器里最好的选择之一。现在就开始在ThinkPH...原创 2019-08-02 17:39:00 · 3071 阅读 · 0 评论