![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
PHP
Holyzq
梦中写代码,痴迷于it编程,加油!更多实战功能请关注 “进哥爱编程” 微信公众号,大家一起交流学习吧!
展开
-
如何开发一个简易的MVC框架?
前言MVC 模式(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller)。MVC 的目的是实现一种动态的程序设计,便于后续对程序的修改和扩展简化,并且使程序某一部分的重复利用成为可能。除此之外,此模式通过对复杂度的简化,使程序结构更加直观。软件系统通过对自身基本部份分离的同时,也赋予了各个基本部分应有的功能。MVC 架构对于 PHP 开发者来说应该都不陌生,我们在日常的项目开发中所使用到的原创 2020-05-27 10:11:41 · 783 阅读 · 0 评论 -
Laravel6.0 结合 EasyWechat实现微信支付
创建项目laravel new wechatcd wechatcomposer require laravel/uiphp artisan ui vue --authcnpm installnpm run dev# 修改数据库配置后执行如下命令php artisan migrate# 启动项目php artisan serve 接下来安装 easyWeChat 包文件,执行下面的命令:// 安装easyWeChat包composer require "overtru原创 2020-05-27 07:51:46 · 1433 阅读 · 0 评论 -
PHP中GD库的使用
概述GD 库是 php 处理图形的扩展库,GD 库提供了一系列用来处理图片的 API ,使用 GD 库可以处理图片,或者生成图片,也可以给图片加水印。在网站上 GD 库通常用来生成缩略图,或者用来对图片加水印,或者用来生成汉字验证码,或者对网站数据生成报表等。配置在 php.ini 配置文件中开启 GD 扩展即可使用extension=php_gd2.dll // 把前面的分号去掉画布实现实现画布所用到的函数:名称、格式注解imageline($img , 起始位置原创 2020-05-27 07:50:43 · 1598 阅读 · 0 评论 -
PHP中使用PDO中间层操作数据库
PDO简介PHP 数据对象 (PDO) 扩展为 PHP 访问数据库定义了一个轻量级的一致接口。PDO 提供了一个数据访问抽象层,这意味着,不管使用哪种数据库,都可以用相同的函数(方法)来查询和获取数据。你可以通过 PHP 的 phpinfo() 函数来查看是否安装了 PDO 扩展。PDO类类名作用PDO::beginTransaction启动事务PDO::commit提交事务PDO::__construct创建一个表示数据库连接的 PDO 实例PDO::e原创 2020-05-27 07:50:09 · 262 阅读 · 0 评论 -
Laravel5.7结合Workerman实现即时通讯
一、准备工作众所周知,即时通讯的应用在目前的市场需求中是很广泛的,要想实现比较高级的应用,首先要认识即时通讯到底怎么回事,初始workman请参考如下地址:https://itfun.tv/chapters/185/body二、功能需求本例主要实现一个当后端数据变化时,前端显示的数据实时变化。以之前小米商城会员统计图表功能为例。当会员列表的会员性别发生变化时,前端图表实时变动。接下来,我们来实现此功能。三、具体实现1、首先去后台的会员管理模块中,加载出会员表中所有数据。并使用ajax实现男女性别原创 2020-05-27 07:47:31 · 1236 阅读 · 0 评论 -
Laravel6.0 + vue.js + elementUI + 微信小程序 实现沃尔玛扫码购
本次项目使用 Laravel6.0 + vue.js + elementUI + 微信小程序 实现沃尔玛扫码购项目设计—接口本次项目所有接口使用 laravel 框架实现。项目设计—后台后台开发使用 laravel 集成 elementUI 模式,页面套用 elementUI 自带样式。后台模块有:1、实现后台登录,对接到前端 vue 页面2、购物袋管理:基本的增删改查,使用模态框实现3、上传图片:单独建一张表,用来存储所有图片,两种方法实现上传:使用插件,上传到七牛 (购物袋模块)原创 2020-05-27 07:45:07 · 2068 阅读 · 0 评论 -
Laravel5.6使用redis队列实现系统通知
需求:一、我们这个系统通知模块的功能是后台发送一个系统通知给所有人或者是给一个人。比如我们在8月8号发送一个系统通知:欢迎大家来到武汉PHP培训长乐未央学习技术。那么每一个人都会收到这个通知,但是如果是8月9号注册进来的人就不会收到这个通知。这个时候,这种通知必须是分发的,每个人都需要有一条记录来保存所分发的通知,所以这是一个分发的逻辑。二、使用同步还是异步来分发。比如我们要是群发的话,需要工作人员在后台点击发布按钮就同步发送通知到用户的通知箱呢还是异步使用队列来做这个事情,当然选择异步更加稳妥。它能防原创 2020-05-27 07:42:41 · 517 阅读 · 0 评论 -
Laravel5.7如何集成Element-react实现简单的CURD
前言MVC 模式(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller)。MVC 的目的是实现一种动态的程序设计,便于后续对程序的修改和扩展简化,并且使程序某一部分的重复利用成为可能。除此之外,此模式通过对复杂度的简化,使程序结构更加直观。软件系统通过对自身基本部份分离的同时,也赋予了各个基本部分应有的功能。MVC 架构对于 PHP 开发者来说应该都不陌生,我们在日常的项目开发中所使用到的原创 2020-05-27 07:34:03 · 251 阅读 · 0 评论 -
TP5.1 实现超时未支付订单自动关闭
对于这个需求,我以前写过Laravel版本的。今天想在TP5.1中实现这个功能,但是网上基本没什么教程可供参考,所以写篇文章仅供大家学习。一、前台1、先来加载订单确认页面当下单成功后,通过 js 跳转到订单确认页,在 checkout.html 中:{block name="js"}<script> $(function () { //去付款,就是下单,跳到订单确认页 $("#pay").click(function () {原创 2020-05-20 09:53:01 · 5284 阅读 · 0 评论 -
Linux宝塔详细使用教程
Linux宝塔面板详细使用教程一、准备工作先购买一台服务器,如:阿里云、腾讯云、华为云等都行。一个纯净版的linux操作系统,常用的 CentOS,Ubuntu 均可,确保没有安装过任何环境。二、登录服务器我这里以 Mac 电脑为例,打开终端,使用如下命令登录进入服务器:ssh root@xx.xx.xx.xxx // 新服务器账号默认为root,可更改输入密码后即可登录,需要注意的是,输入密码的时候是看不到密码的,不要以为没有输入哦。。若是Windows电脑,请移步原创 2020-05-27 07:53:35 · 22200 阅读 · 2 评论 -
ThinkPHP3.2和Laravel自定义辅助函数的使用
在我们的日常项目开发过程中,常常会使用到辅助函数,例如:商品模块中有很多属性(是否上架、热销、推荐、新品、置顶等),以正常逻辑,我们会首先想到的就是给每个属性绑定事件,js获取需要的值,通过发送Ajax请求到PHP端,PHP端接收到值后,执行数据库的更新操作即可。如果是这样的话,我们的js代码量就会增加很多,整个模块在代码结构优化上就不是很好了,所以我们要以最简洁的代码来实现上述功能。接下来我们...原创 2020-03-18 22:12:55 · 269 阅读 · 0 评论 -
如何使用ThinkPHP3.2上传图片到七牛云
我们在做大型商城项目或者其他项目的时候,上传图片肯定是必不可少的,以前的项目都是把图片上传到本地,针对于图片量比较大的商城,很多企业要求把图片上传到第三方网站,比如七牛云等。这样可以大大加快网站的加载速度。那么,如何在ThinkPHP3.2框架中使用七牛云呢,接下来我们来分析详细操作步骤。一、首先进入七牛云官网 https://www.qiniu.com/ 注册账号,登录后进入 管理控制台--对...原创 2020-03-18 22:11:30 · 871 阅读 · 0 评论 -
Laravel5.6结合EasyWechat实现微信菜单管理
关于微信公众号开发,网上的教程也有很多,但是针对于功能模块的开发,没有具体的操作步骤,很难理解别人写的是什么,所以我根据自己的经验来总结一下针对微信菜单管理的具体实现步骤。微信原生实现我就不说了,看看微信官方文档,基本是看不懂的。我们这里以微信测试号为例,使用的是Laravel + EasyWechat 去实现此功能。注:本次开发,项目无需上线,本地即可。一、在后台模块中增加微信菜单管理,先把页...原创 2020-03-18 22:10:12 · 1434 阅读 · 0 评论 -
Laravel5.6 结合 EasyWechat4.0实现与微信对接
上一次课,我们完成了微信后台菜单管理,接下来,我们来实现如何使项目与微信对接。一、微信授权登录1、 当微信菜单管理功能完成后,把项目部署上线。此处省略。。。2、 在.env文件中配置token。3、 在api.php中配置微信接口路由,代码如下:Route::namespace('Wechat')->group(function(){ $this->any('wech...原创 2020-03-18 22:09:01 · 763 阅读 · 0 评论 -
ThinkPHP3.2如何使用Auth类实现权限管理
关于权限管理,在WEB开发中被广泛应用,是每个PHP程序员必须掌握的技术。网上随便一搜,都有不少关于权限的教程,基本上很难看懂别人说的什么。所以我根据自己的经验来总结一下。一、数据库首先来分析一下数据库表结构。数据库中应有四张表:user表(用户表)、auth_group表(用户组表)、auth_group_access表(用户组明细表)、auth_rule表(规则权限表)。具体的数据库sq...原创 2020-03-18 22:07:30 · 916 阅读 · 0 评论 -
Ubuntu Server 16.04.1 LTS 64位配置nginx、mysql、php7.2
一、配置服务器配置源,更新一下sudo apt-get install software-properties-common python-software-propertiessudo add-apt-repository ppa:ondrej/php && sudo apt-get update跑这个命令时会出现 `123` 选择,直接回车,之后就会报编码错误,执行...原创 2020-03-18 22:05:21 · 373 阅读 · 0 评论 -
Laravel5.6 + Passport实现Api接口认证
很多企业做项目使用前后端分离,后端提供接口地址,前端使用接口地址拿数据,并渲染页面。那么,前端用户登录如何使用接口进行认证?网上各种教程写的不堪入目,完全看不懂,所以我根据自己的理解,写下此篇文章,希望能帮助到大家。##后端(Laravel5.6框架)1、使用composer安装Passport,打开终端,执行命令:composer require laravel/passport #安...原创 2020-03-18 21:58:40 · 573 阅读 · 0 评论 -
解析Laravel5.6项目该如何优化性能
我们在日常的开发过程中,经常会发现我们开发的一些应用有些时候加载会很慢,那么就涉及到怎么去优化的问题了。今天我就根据我的经验来跟大家分析一下。在我平时做项目的过程中,会用到以下方式进行性能优化,这里以laravel框架为例:一、自带命令终端通过 php artisan查看全部命令1、路由缓存优化:在web.php中,我们使用的路由基本上都是group、middleware或者资源路由等这...原创 2020-03-17 19:57:51 · 400 阅读 · 0 评论 -
Laravel5.6使用定时任务实现定时发邮件
本文方法是利用Linux的crontab定时任务来协助实现Laravel的任务调度一、创建项目1、打开终端,执行命令:laravel new crontab,包括数据库,确保本地能正常运行。随后部署上线。phpstrom连接服务器,确保代码可以正常提交到服务器。2、创建任务类,终端执行命令:php artisan make:command SendEmail3、修改 SendEmail.p...原创 2020-03-17 19:56:46 · 716 阅读 · 0 评论 -
Ubuntu实现线上数据库定时备份
##一、介绍1、cron是一个Linux定时执行工具,可以在无需人工干预的情况下运行作业。在ubuntu server 下,cron是被默认安装并启动的,默认安装目录:/etc/crontab2、要实现定时任务,首先要了解cron的各种命令,cron服务的启动与停止1、service cron start /启动服务/2、service ...原创 2020-03-17 19:55:44 · 276 阅读 · 0 评论 -
Laravel 结合Elasticsearch 实现全文搜索
一、安装终端执行命令,全局安装 elasticsearch,命令如下:brew install elasticsearch过程中,你会看到一个报错信息,说你没有安装Java的JDK, 而且版本必须是1.8以上的,根据提示命令安装即可。brew cask install homebrew/cask-versions/java8安装完后,执行命令查看版本信息:java -version...原创 2020-03-17 19:54:46 · 810 阅读 · 0 评论 -
VirtualBox6.0 + Ubuntu18.04搭建本地服务器安装图文教程
一、准备工作1、下载VirtualBox6.0(目前最新版),下载地址:https://www.virtualbox.org/wiki/Downloads,如果是MAC电脑下载 OS X hosts ,windows电脑下载Windows hosts即可。下载完后,自行安装。2、下载ubuntu18.04的镜像文件,下载地址:http://releases.ubuntu.com/18.04....原创 2020-03-17 19:51:11 · 934 阅读 · 0 评论 -
Linux服务器上如何给项目设置SSL证书
一、HTTPS和HTTP的区别1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身...原创 2020-03-17 19:47:51 · 6480 阅读 · 0 评论 -
Laravel5.8如何实现文章浏览数存入Redis
一、需求介绍一篇文章或者帖子的浏览次数的统计,如果只是每次增加一个浏览量 就到数据库新增/修改一个数据,请求频繁 用户量一多就出问题了。二、解决方案1、每次增加一个访问量就在缓存中去进行更改2、达到一定数量后刷新改变Mysql数据库,这样数据也是准确的 效率也比直接每次刷新数据库要高出许多本次教程是以测试项目为案例来实现此功能,如需在正式项目中开发,请自行集成!三、功能实践1...原创 2020-03-17 19:46:59 · 595 阅读 · 0 评论 -
Laravel6.0 使用 Jwt-auth 实现多用户接口认证
后台管理员认证 (admins表)首先创建数据库和表(admins),在 routes/api.php 中,写上如下路由并创建对应控制器和方法。Route::namespace('Api')->group(function () { /*** * 管理员后台接口路由 */ Route::prefix('admin')->namespace('Ad...原创 2020-03-17 19:43:01 · 1547 阅读 · 3 评论 -
Laravel6.0结合七牛云短信实现短信验证
前期准备登录七牛云官网: https://developer.qiniu.com/1、找到控制台–云短信–签名,新建签名,注意填写签名时不要填写模糊词语或者个人等词语,如果没有通过审核,客服会提示给你哪里错误,你就修改即可。2、找到模板,新建模板,选择验证码类即可。3、等待客服审核,一般半小时吧。4、之所以选择七牛云,是因为七牛给我们免费试用300条短信,所以不用花钱哦。创建项目la...原创 2020-03-17 19:17:59 · 968 阅读 · 0 评论 -
Laravel6 实现超时未支付订单自动关闭
处理订单号的问题本节课程主要是在之前的小米商城基础上完善一个常见的小功能。之前我们创建订单的订单号使用的是订单表的 id 字段,正规的大型项目都不会这么做,所以需要写一个随机生成订单号的方法。1、 在 orders 表中添加一个订单号字段 out_trade_no,VARCHAR 类型,长度 255。2、在 app\Models\Shop\Order 模型中添加生成订单号的方法,代码如下:...原创 2019-12-04 09:37:59 · 2099 阅读 · 0 评论