![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
php
刘默生
找准目标,坚持,坚持,再坚持。
展开
-
使用php - 随机生成10尾数密码
使用php - 随机生成10尾数密码。原创 2023-05-12 12:46:55 · 256 阅读 · 0 评论 -
php通过curl发送post请求携带body参数,和发送get请求
PHP发送post请求,携带body数据,# url,请求路径,postdata 请求body参数,注意是json格式public static function btnPost($url,$postdata){ # 初始化一个curl会话 $ch = curl_init(); # 启用时会发送一个常规的POST请求 curl_setopt($ch, CURLOPT_POST, 1); # 需要获取的URL地址 curl_setopt($ch, CURLOPT_..原创 2021-01-23 10:37:02 · 6135 阅读 · 4 评论 -
虚拟机链接当服务器,websocket链接不上问题记录。
在学习swoole中,有个超简单的websocket链接的demo,但是我的本机死活连接不到虚拟机中的地址,但是在虚拟机中curl可以访问,所以拜访大佬,解惑了,两点考虑,一点是网络链接方式,桥接或者nat链接,一种查看是否开启了防火墙。liunx开启nat配置,打开虚拟机中的网络配置编辑器,查看设置,然后在虚拟机中输入编辑liunx网络的配置vi /etc/sysconfig/network-scripts/ifcfg-ens33将虚拟机中的网络配置,写道这个文件中,并设置BOOTPROT原创 2020-12-03 22:40:49 · 1082 阅读 · 5 评论 -
thinkphp 对接阿里云短信支付,其主要是新版composer对接阿里短信
前沿:新项目,是thinkphp6中开发的,然后需要对接一个短信业务,选择了阿里云短信sdk,新版的sdk使用的是composer 直接安装的,但是阿里云提供的文档,应该是zip包,所以文档不对应,composer下载的sdk和官方提供的sdk的文档不对应,所以备受踩坑,以前是将这个zip包放到,extend目录中,这次是直接使用composer进行安装,更方便和快速,但是没有文档还是很不爽的,所以暂做一次记录。1. 使用composer下载阿里云sdkcomposer require alibaba原创 2020-11-13 12:01:11 · 927 阅读 · 0 评论 -
闭包和匿名函数,生成器的演示,多态,递归,反射机制,curl发送请求
上午:php闭包中的应用:php闭包函数和匿名函数,意义是相同的,在方法中定义了一个没有名称,但是用户返回值的函数,同时,在闭包中可以通过use访问外部变量,但是外面却无法访问闭包函数中的变量,除非,使用global全局定义。header('Content-Type:text/html;charset=utf-8');$str = 1;$arr = [1,2,3,4,5];# 定义变量$hah = 1;# 将$res = function() use ($str,$arr){原创 2020-11-02 20:11:01 · 118 阅读 · 0 评论 -
php原生生成验证码类
<?php# 创建一个验证码生成类// Create the imageclass Verify{ private $fontfile = 'E:\phpstudy_pro\WWW\php7\simkai.ttf'; public $width = 120; # 画板宽度 public $height = 50; # 画板高度 public $red = 25;# color red 色值 public $blue = 10;# color blue原创 2020-10-20 13:40:14 · 193 阅读 · 2 评论 -
php结合redis实现模拟队列执行,
上篇通过事务加排它锁完成,仿秒杀结构,现在使用redis模拟放秒杀,处理秒杀,感觉就像是处理一批广场舞大妈,刚开始都是乱轰轰的,需要通过一定的规则,将他们排好序,一排排的走,谁先来谁先进。秒杀要处理的问题,很多,感觉加锁,比较靠谱redis.php的代码 这里的代码是压测工具访问的代码<?php$redis = new Redis();# 进行redis连接$redis->connect('127.0.0.1',6379);# list链表名称$redis_name = 'mia原创 2020-08-22 22:03:38 · 332 阅读 · 0 评论 -
原生php实现,图层合并,通过文字生成图片,
需求:最近在做一个原生的php项目,要通过用户上传的图片和信息,生成一个对应的证件,就想到了使用GD库,但是现在的是自己不太会,所以靠百度,找到了一个大佬写的代码,然后封装了一下,实现了此效果,留下记录,以后可以直接拿来使用,php代码<?phpclass ImageHandle{ private $tmpdir = "."; # 文件目录必须的是绝对路径,但是后来没用上 我就先保留了 private $font = array("family" => "E:/转载 2020-08-04 21:24:05 · 397 阅读 · 0 评论 -
原生php实现容器、ioc、di的方法和个人理解。
第一种方式,普通方式实现模拟操作数据库方法 # 第一种写法,耦合度高# 模拟db操作数据库的类class dbMysql{ public function query() { return " 这是 db操作mysql的类"; }}# controller是需要dbmysql才能操作数据库class Controller{ # 定义一个私有的变量 用来存放数据库操作对象 private $db; # 构造函数 public function __construc原创 2020-06-21 22:59:42 · 329 阅读 · 0 评论 -
phpstom配置xdebug
phpstom安装xdebug前言:安装这个总比,自己一点一点,die香。查看自己的php版本,输入phpinfo,查看php版本如果我们不知道下载xdebug那个版本的那么,访问这个地址:https://xdebug.org/wizard,将php打印的所有信息放到这个框中,点击箭头标明的地方。会将你的php版本信息打印出来,同时会出现适合你的xdebug版本,点击下载。然后打开你的php存放的位置将,下载的dll文件放到ext文件目录下打开php.ini文件,将刚刚文件原创 2020-06-20 19:45:25 · 159 阅读 · 0 评论 -
phpexcel数据导出加打包,
前言:项目中存在本地服务器图片和阿里oss图片,需要将信息导出,并下载,oss下载到本地太占信息,所以拷贝到一个oss到一个地址,然后告诉用户地址,在将这个文件夹下载,路径要和导入的excel文件中的url地址相匹配,本地服务器的文件,则直接打包到这个zip包中,下载。`phppublic function package(Request $request){ if($request->isPost()) { # 前台发送过来的请求信息 /*原创 2020-06-07 22:28:13 · 470 阅读 · 0 评论 -
php 使用phpexcel实现数据导出
先做一个简单的数据的导入导出,明天将图片打包下载,oss移动文件,和数据导出完善,namespace app\admin\controller;use think\Controller;use think\Request;use PHPExcel;use PHPExcel_IOFactory;class Demo extends Controller{ public function index() { # sql查询 $data = \a原创 2020-06-06 20:42:44 · 450 阅读 · 0 评论 -
图片打包下载,本地服务器打包文件下载,及线上图片地址下载
最近做的项目是一个图片的项目,刚开始偷懒上传到的是本机服务器上的路径地址,然后上传到线上一段时间之后,人多服务器带不起来了,就赶紧将图片地址由本机地址,上传到阿里云oss上,然后现在就开始遇见难题了,首先要判断地址是否是https请求的,如果是https请求的则替换方法,目前先将,本地服务器打包下载文件,和线上图片地址下载,访问打包下载放上,然后在整合代码。本地服务器下载图片,打包下载# 本机服务器打包下载 好的代码,现在欠缺的是 循环得出所有的图片地址 public function dow原创 2020-06-05 21:47:48 · 5537 阅读 · 0 评论 -
原生PHP异常处理,过滤敏感词
异常处理# 异常处理function checkfun($num){ if($num > 10) { # 返回一个异常错误 throw new Exception('Value must be 1 or berow'); } return "正确";}# 判断是否 会触发我们 实现定义好的异常提示try{ # 如果传入的变量大于10则返回一异常 $res = checkfun(11); echo $res;}catch(\Exception $e){原创 2020-05-31 17:03:50 · 242 阅读 · 0 评论 -
php 和 Echarts数据显示,按照时间计算注册数
如果需要计算用户,每周的注册数,或者每月的注册数,统计我们可以,可以先找到第一条数据的时间,然后根据时间转换成字符串,每次使用date函数添加一周或者一个月的时间,然后使用betwwen 判断都有哪些用户是在这些时间里,做个统计,即可获取到没周的注册数。使用echarts用了一个比较取巧的方法,就是i根据路径就匹配最后一个id,通过这个id来进行分组条件。其实最好的还是,在本页面传变量,在将变量传递到js中,然后发送ajax请求数据。再根据请求的变量,来进行数据处理,返回到前台。// 分类A的分类数据原创 2020-05-24 19:12:09 · 272 阅读 · 0 评论 -
tp框架实现一对多单发站内信功能。
站内信功能前言:公司项目需要一个站内信功能,但我没做过,所以做个记录,根据需求,需要后台发送站内信,前台用户接受,默认状态保持为未读,当用户点击查看时,更改状态为已读状态,并且站内信可回复。后台使用的是tp5.0结合layui做的系统界面。layui简单来说,真香,直接搜索匹配要输入的用户需求:一对多功能管理员向用户发送一个站内信,用户接受到,可以回复。站内信的本质,其实就是数据库的...原创 2020-05-06 14:06:55 · 665 阅读 · 0 评论 -
tp实现文件下载,以及下载图片,报错无法打开图片
临时接到一个需求,需要在一个地方点击可以下载当前文件,所以百度了一个方法,调整了一下,实现了,但是由于不太理解具体的实现方式,留作记录准备以后定时观看,挺实用的一个方法。定义一个控制器方法# 下载审核文件 public function down(Request $request) { # 获取前台传递数据 $data = $request->para...原创 2020-05-03 14:17:51 · 871 阅读 · 0 评论 -
php编写规范,实时更新。
1、首先对于所有的命名,和文件大小写,要采取严格模式,采取完全相同的方法,2、采取严格模式,遵循psr-4规范3、缩进以4个空格键为缩进,不可在使用tab键。4、方法名采用小驼峰命名法5、thinkphp中采用$this->assign()传递变量,尽量少使用助手函数,统一由类来进行处理,6、控制器中编写,业务逻辑代码,所有与数据有关的方法,统一写入到模型中,在模型中处理数据7、...原创 2020-04-13 18:07:18 · 129 阅读 · 0 评论 -
php实现字符串分割、首字母替换成下划线 首字母大写
<?php class Demo{ // 将字符出没3位分割 public function StrThree($str) { // strrev 反转字符 $str = strrev($str); // 将字符没三位分开,中间以逗号分离 $str = chunk_split($str,3,','); ...原创 2020-02-22 20:27:24 · 924 阅读 · 0 评论 -
php编写的小demo(斐波那契数列、直角三角形、冒泡、二分、顺序)
单例模式:只允许有一个对象,不允许克隆,初始化,好处:类似db类操作数据库,当前只允许一个对象调用,但是看资料好像php又不能实现,底层原理基础太差。new 一个对象是一个非常消耗资源的方式,所以我们可以使用静态方法初始化一个对象。使用了强制类型,int、array<?php // 单例模式class Danli{ // 私有化的静态保存属性 private static $...原创 2020-02-22 11:03:48 · 338 阅读 · 0 评论 -
tp5实现文件上传图片到数据库,并显示到页面。
思路:1、html中一个form表单,里面编写一个单个的name=file的input框,2、编写控制器上传到数据库的方法,要记着创建模型。3、遍历数据库中的所有图片。html内容:提交图片方法<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <...原创 2020-01-27 11:23:50 · 3023 阅读 · 3 评论 -
tp框架实现点赞功能
Thinkphp实现点赞效果,投个懒就不修改数据库了,直接将得到的数据保存在缓存中,只要用户不清楚缓存就一致保存,也可以保存到数据库中,无所谓就是在加一个ip字段,获取到ip然后保存到数据库中,在用缓存对比的时候,换成数据库对比。思路:1、点赞的功能无所谓是发送个ajax请求,然后更新数据库,所以我们搞清楚这一点就好弄了。2、先写个ajax请求后台数据,然后传递过去一个文章id,因为需要判断...原创 2020-01-17 17:13:42 · 1528 阅读 · 0 评论 -
递归解决无线级分类问题,
无线级分类:每一个分类下面都会有个子分类,直到当前分类是最终分类,不可以在分了,所以需要我们尝试使用一种方法,以最简单的方式,执行一个简单明了的效果,这是一张数据表的图。根据pid去寻找id值,因为pid代表着最初的分类,根据这个递归解决这个问题这是模型中的方法这是控制器中的方法:这是视图中的方法效果图...原创 2020-01-16 21:27:54 · 229 阅读 · 0 评论 -
thinkphp基础访问控制器及基础函数重名报错警告
Thinkphp定义了一个User控制器 在user控制器中定义了一个list函数然后在前台调用的时候报错解决办法,应该是和thinkphp内置函数重名,所以语法错误,修改函数名,同时修改视图名,解决成功。我这里写的是一个公共的头部方法和尾部方法 所以出现了这种效果,实际就是遍历一下数据库中的数据同时建议,多看看你用的thinkphp版本的文档,因为版本不同,你们用的东西就不...原创 2019-05-12 22:23:47 · 266 阅读 · 0 评论 -
刷新显示大屏广告,并且可以实现自动退出时间的秒数
直接上代码,清楚明了: 刷新显示弹出层,并且显示秒数 X 倒计时 秒广告自动结束 <!-- 以下模块均为个人谋财 旁人假若引用 可直接删除 --><div class="body"> <p>作用是可以用来做大屏广告,因为公司需要,我是在jquery中...原创 2019-07-04 22:11:46 · 211 阅读 · 0 评论 -
第一次使用php编写爬虫,使用了phpspider包
Php爬虫,最简单的小demo最重要的两点,第一必须在命令行中输入,windows+R,输入cmd,先查看自己的电脑中有没有composer依赖包。这是安装成功的。然后安装phpspider,这个是php支持写爬虫的依赖包。进入到你的项目路径,我这个是放在了tp框架里,可以随意的修改项目路径。第一种方法:输入:composer require owoner888/phpspider...原创 2019-08-29 11:48:38 · 591 阅读 · 0 评论 -
php实现99乘法表(直接嵌入html)
<?php for($i =1;$i < 10;$i++): ?> <tr> <?php for($j=1; $j <=$i;$j++): ?> <td> <?php echo $i . ' * ' . $j. '=' . $i*$j; ?> </td> <?p...原创 2019-09-26 14:23:12 · 1103 阅读 · 0 评论 -
php实现直角三角形和等腰三角形
<?php // 直角三角形 $sum = 10; for($a = 0; $a < $sum;$a++){ for($b=0;$b < $a;$b++){ echo '*',' '; } echo '*',''; } echo '';//金字塔 等腰三角形$s = 10;//控制层数f...原创 2019-09-27 10:13:46 · 5060 阅读 · 1 评论 -
php函数整理,包括数组拆分,冒泡排序,顺序查找法(自练)
<?php // 函数demo// 定义常量 PIdefine('PI',3.14);$r = 9;// 定义变量$s 调用这个函数$s = getArea($r);echo "原型的面积是: ".$s;function getArea($r){ $sum = PI*$r*$r; return $sum;}// 可变函数function variable($r...原创 2019-09-27 22:20:53 · 211 阅读 · 0 评论 -
git的基本使用方法,克隆github的项目,上传到自己的github中的项目中
只是简单的git的基本操作,不牵扯太多但直接用来还是可以的,包括对接github或者码云上的代码提交、克隆到本地都可以。1、首先先创建一个码云账号,然后创建一个版本仓库2、在自己的电脑上下载git特别好下载再次不做声明3、首先克隆这个项目,你需要复制一下这个仓库地址4、复制好了来打开命令行模式(截不了图了,打开bash的界面们会弹出一个小黑窗口)输入git clone url(你刚刚...原创 2019-10-08 21:35:05 · 908 阅读 · 0 评论