PHP
文章平均质量分 62
敲代码der
遇见更好的自己
展开
-
TP框架的一些知识
TP框架原创 2022-05-31 22:44:50 · 642 阅读 · 0 评论 -
PHP接收二进制数据流并生成图片
获取二进制数据流$data = file_get_contents('php://input');指定文件保存路径$dirName = ROOT_PATH . 'public' . DS . 'upload/images/' . date('Ymd');创建文件夹! is_dir($dirName) && mkdir($dirName,0777,1);获取上传图片后缀$headers = $this->request->header('content-type原创 2021-04-01 18:34:32 · 842 阅读 · 0 评论 -
PHP7基本变量
1. 结构体与联合体// 包含头文件// #include<stdio.h> 就是一条预处理命令,它的作用是通知C语言编译系统在对C程序进行正式编译之前需做一些预处理工作#include<stdio.h> // 函数就是实现代码逻辑的一个小的单元// 主函数 在最新的C标准中,main函数前的类型为int而不是voidint main(){ /*定义结构体*/ struct _s{ char a; int b;原创 2021-03-08 16:45:51 · 269 阅读 · 0 评论 -
Redis GEO
Redis GEO 主要用于存储地理位置信息,并对存储的信息进行操作,该功能在 Redis 3.2 版本新增。Redis GEO 操作方法有:geoadd:添加地理位置的坐标。 geopos:获取地理位置的坐标。 geodist:计算两个位置之间的距离。 georadius:根据用户给定的经纬度坐标来获取指定范围内的地理位置集合。 georadiusbymember:根据储存在位置集合里面的某个地点获取指定范围内的地理位置集合。 geohash:返回一个或多个位置对象的 geohash 值原创 2021-01-05 16:14:23 · 95 阅读 · 0 评论 -
PHP实现秒杀设计
工具压测工具yum -y install httpd-toolsab -V# 检测接口最大qps# -c 并发请求数, -n 总共访问次数ab -n 100 -c 10 http://xxxRequests per seconds: 101.15[#/sec](mean)查看接口是否仍有优化空间, 确保接口性能达到单机最佳若已达到最佳状态, 还需要对接口进行限流, 确保服务不会因为流量暴增而雪崩原理减而治之CDN原理减少读的压力( 把订单详情页内容通过CDN下发到不同的节点原创 2020-12-11 10:22:28 · 1282 阅读 · 1 评论 -
宝塔面板设置HTTPS+阿里云SSL证书
1. 宝塔面板指定某一域名设置宝塔SSL为宝塔官方提供的免费证书服务, 只需要在宝塔官网宝塔注册后实名认证, 申请证书然后按照指定的验证方式去验证域名, 完成之后就是等待审核2. 阿里云SSL证书服务购买证书勾选免费版, 填写指定域名, 如果该域名在本账号下, 可以选择DNS验证, 很方便快速部署根据自身服务器类型下载证书宝塔配置选择其他证书, 把下载下来的证书解压后( Apache是三个文件, Nginx是两个文件)Apache用记事本打开.key文件 复原创 2020-08-05 16:25:43 · 2224 阅读 · 0 评论 -
TP6+JWT开发APP接口
1. 开发环境PHP框架: ThinkPHP6操作系统: MacOsWeb服务器: Nginx2. APP接口2.1. 简介客户端与服务端进行数据交互的通道, 大部分APP接口都是通过HTTP协议通信的2.2. HTTP通信的三要素URL 通信地址Method 通信方式(GET|POST|PUT|DELETE)Params 通信的内容2.3 APP接口的输入客户端传递参数URL参数传递, 将参数拼接在URL后边, GET方式Request Body, 将参数放在Body原创 2020-06-23 18:27:06 · 5049 阅读 · 2 评论 -
MAC安装Redis并配置PHP
1. brew安装redisbrew install redis通过brew安装后的路径为: /usr/local/Cellar/配置文件路径: /usr/local/etc/redis.conf2. 启动redis# 进入cd /usr/local/Cellar/redis/6.0.3/bin# 启动./redis-server# 查看是否运行./redis-cli127.0.0.1:6379> pingPONG127.0.0.1:6379>3. 添加至开机启原创 2020-06-02 15:03:01 · 491 阅读 · 1 评论 -
MAC系统安装配置LNMP+TP6
一. 安装HomebrewHomebrew是一款Mac系统下的软件包管理工具,brew命令类似CentOS上的yum,能十分方便的在Mac上安装或卸载软件/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"若安装报错, 运行下面自动脚本(已经全部替换为国内地址):/bin/zsh -c "$(curl -fsSL https://gitee.com/cun原创 2020-05-27 15:42:05 · 501 阅读 · 0 评论 -
设置UEditor上传大视频文件
1. 修改ueditor目录配置文件ueditor资源目录, ueditor/php/config.json, 找到 videoMaxSize"videoMaxSize": 102400000, /* 上传大小限制,单位B,默认100MB */调整为1G"videoMaxSize": 1024000000, /* 上传大小限制,单位B,默认100MB */2. 修改php.ini相关设置可以通过phpinfo()函数找到php.ini的路径我的系统是ubuntuvim /etc/php原创 2020-05-12 15:04:37 · 2802 阅读 · 5 评论 -
Docker搭建Nginx+PHP部署TP6
1. 搭建Nginx+PHP拉取镜像# 拉取 PHP+Nginxdocker pull webdevops/php-nginx创建项目目录和配置文件# 进入目录cd ~/wang# 创建mkdir app nginx# 配置文件vim ~/wang/nginx/vhost.conf# 内容server { ...原创 2020-04-27 13:52:09 · 4187 阅读 · 4 评论 -
Docker安装Nginx+PHP环境
1. 安装PHP拉取PHP镜像docker pull php宿主机创建项目目录, 用于映射到容器mkdir -p ~/wang/htdocs创建容器# --name 容器名称# -v 目录映射# -d 后台运行sudo docker run --name php-fpm \-v ~/wang/htdocs:/www \-d php2. 安装Nginx拉...原创 2020-04-26 11:31:03 · 251 阅读 · 0 评论 -
Docker环境部署PHP后端项目集群
1. 搭建PHP项目环境创建网络段docker network create net1拉取apache与php镜像docker pull webdevops/php-apache:7.4创建容器(3节点)# 创建第一个php节点,并作端口与目录映射docker run -it -d --name a1 \-p 8081:80 \-v ~/apache/app1:/...原创 2020-04-18 15:37:59 · 1785 阅读 · 0 评论 -
php获取农历、节日、节气
php获取农历、节日、节气/* * 农历 节气 节日 */ header("Content-Type:text/html;charset=utf-8"); class Lunar { var $MIN_YEAR = 1891; var $MAX_YEAR = 2100; var $lunarInfo = array( ...原创 2020-02-05 19:39:19 · 554 阅读 · 0 评论 -
NATAPP与PhPstudy与TP5搭配配置
TP5composer下载安装框架部署开发NATAPP去官网https://natapp.cn/注册登陆申请免费隧道, 指定本地端口(与phpstudy中的保持一致)下载win版本的NATAPP客户端, 并在同级目录创建config.ini文件, 文件中填入配置信息[default]authtoken= #对应一条隧道的authtokenclientto...原创 2020-02-19 17:11:05 · 518 阅读 · 0 评论 -
php中加密解密DES的使用
在平时的开发工作中,我们经常会对关键字符进行加密,可能为了安全 也可能为了规范,所以要正确使用DES加密解密代码1:class DES{ var $key; // 密钥 var $iv; // 偏移量 function __construct( $key, $iv=0 ) { $this->key = $key; ...原创 2020-01-17 11:58:51 · 423 阅读 · 0 评论 -
PHP使用PhpSpreadsheet操作Excel
一、PhpSpreadsheet 介绍1、PhpSpreadsheet 是什么PhpSpreadsheet是一个用纯PHP编写的库,提供了一组类,使您可以读取和写入不同的电子表格文件格式PhpSpreadsheet提供了丰富的API接口,可以设置诸多单元格以及文档属性,包括样式、图片、日期、函数等等诸多应用,总之你想要什么样的Excel表格,PhpSpreadsheet都能做到使用 Ph...原创 2020-01-09 13:34:11 · 1955 阅读 · 3 评论 -
PHP开发api接口安全验证
php的api接口在PHP的开发工作中,对API接口开发不会陌生,后端人员写好接口后,前台就可以通过链接获取接口提供的数据,而返回的数据一般分为两种情况,xml和json, 在这个过程中,服务器并不知道,请求的来源是什么,有可能是别人非法调用我们的接口,获取数据,因此就要使用安全验证来屏蔽某些调用。验证原理示意图原理从图中可以看得很清楚,前台想要调用接口,需要使用几个参数生成签名。● ...原创 2020-01-09 10:38:52 · 986 阅读 · 0 评论 -
CentOS7搭建LNMP环境
亲测有效 https://www.cnblogs.com/lishanlei/p/9055344.html转载 2019-12-25 10:35:54 · 108 阅读 · 0 评论 -
从0到1认识Redis
Redis介绍Redis是远程的, 客户端与服务端可部署在不同的机器上, 通过自定义的协议进行传输和交互Redis是基于内存的, 其结构与数据都存在内存中, 所以操作会很高速, 性能远远高于基于硬盘的Mysql, 也很吃内存Redis是非关系型数据库( 其本质是存储数据的数据库, 其具有硬盘持久化机制, 可以将内存中的数据写入硬盘, 保证数据的完整性和安全性 ), Mysql为关系型数据库...原创 2019-12-19 17:58:44 · 165 阅读 · 0 评论 -
Centos7安装swoole扩展
我的PHP版本为PHP 7.2.24更新源[root@localhost html]# yum update安装需要支持的扩展[root@localhost html]# yum install php72w-devel[root@localhost html]# yum install php72w-pear[root@localhost html]# yum instal...原创 2019-12-15 17:06:11 · 402 阅读 · 0 评论 -
CentOS7系统搭建LAMP以及更新PHP版本
搭建LAMP环境 用yum安装安装Apache安装Apache[root@localhost /]# yum install httpd httpd-devel启动Apache[root@localhost /]# systemctl start httpd设置Apache开机启动[root@localhost /]# systemctl enable http...原创 2019-12-13 19:02:45 · 597 阅读 · 0 评论 -
PHP中的类与对象详细解读
1. 类与对象类是面向对象程序设计的基本概念,是一类东西的结构描述 , 是一种抽象的概念 . 对象是一类东西的一个具体的实例 , 是具体事物 .对象通过new关键字进行实例化:比如汽车可以抽象为一个类,汽车拥有名字、轮胎、速度、重量等属性,可以有换挡、前进、后退等操作方法。// 定义一个汽车类class Car { $name = '汽车'; function getN...原创 2019-11-28 16:15:35 · 289 阅读 · 0 评论 -
Ubuntu18.04系统安装并配置Redis以及phpredis扩展
1. 安装安装$ sudo apt-get update$ sudo apt-get install redis-server启动$ sudo /etc/init.d/redis-server start无法启动systemctl status redis-server.serviceredis-server.service: Can't open PID file /var/...原创 2019-10-16 11:38:50 · 464 阅读 · 0 评论 -
ThinkPHP5框架获取不到前端AJAX传入的JSON数据
TP框架获取不到前端AJAX传入的JSON数据,Request和input都获取不到$put = request()->put(); 试一下 //会自动将JSON报头的数据转为数组$put = file_get_contents(‘php://input’); 1 不行 再考虑获取到再截取相应数据...原创 2019-09-05 11:17:19 · 1989 阅读 · 0 评论 -
关于类继承
子类继承父类的时候,如果父类已经有初始化方法,再在子类中添加一个初始化方法,就会将父类的初始化方法给覆盖,使得父类的初始化方法不再执行只执行该类中的初始化方法,可以在该类的每个方法之前再调用一个新方法或者在子类初始化方法中使用parent::_initialize(); 来保留父类的初始化内容...原创 2019-09-05 10:34:26 · 108 阅读 · 0 评论 -
关于域名解析的问题
== 解析失败 或者 还没解析成功==解析成功,但域名没有指向项目路径,指向服务器默认路径== 1 . 解析成功 也指定路径,但指定路径不存在或者路径错误 找不到该文件2. 框架中index.php入口文件的隐藏问题,加上index.php再试一下==解析成功 且指定路径正确...原创 2019-09-05 10:30:42 · 152 阅读 · 0 评论 -
ThinkPHP在模板中应用{switch}{/switch}标签
syntax error, unexpected ’ <!’, expecting endswitch (T_ENDSWITCH) or case (T_CASE) or default (T_DEFAULT)在模板中应用{switch}{/switch}标签,报错,其实是switch的问题,模板解析后,switch:和第一个case:之间不能有有输出的,一个空格也不行,所以第一个要紧跟着...原创 2019-09-05 10:26:13 · 918 阅读 · 0 评论 -
SSH客户端无法链接Linux实例,但是控制台连接远程成功
查看服务器防火墙设置:ubuntu 系统默认已安装ufw.1.安装sudo apt-get install ufw2.启用sudo ufw enablesudo ufw default deny运行以上两条命令后,开启了防火墙,并在系统启动时自动开启。关闭所有外部对本机的访问,但本机访问外部正常3.开启/禁用sudo ufw allow|deny [service]打开或...原创 2019-09-05 10:22:37 · 574 阅读 · 0 评论 -
配置LAMP环境
步骤一,安装apache2sudo apt-get install apache2 安装完成。运行如下命令重启下:sudo /etc/init.d/apache2 restart在浏览器里输入http://localhost或者是http://127.0.0.1,如果看到了It works!,那就说明Apache就成功的安装了,Apache的默认安装,会在/var下建立一个名为www的...原创 2019-09-05 10:19:05 · 133 阅读 · 0 评论 -
Call to undefined function curl_init().? [duplicate]
curl_init() 方法没有运行 , 即curl扩展没有安装== Windows 系统==找到PHP的配置文件 php.ini在该文件找到 ;extension=php_curl.dll 该行将前面的 ; 去掉保存并退出重启服务器==Linux Ubuntu 13.0 或者该版本以上 ==终端执行安装sudo apt-get install php-curl或...原创 2019-09-05 10:04:00 · 198 阅读 · 0 评论 -
you don't have permission to access / on this server如何解决
一般出现这种问题 , 是找不到指定路径文件检查是否解析路径错误或者大小写问题注意两个框框的地方 , 地址配置路径 , 然后查看内的东西原创 2019-09-05 09:55:42 · 970 阅读 · 0 评论 -
Ubuntu系统启用Apache Mod_rewrite模块
1.需要找到服务器Apache配置文件 , 例如: /etc/apache2/apache2.conf2.编辑该文件 sudo vim /etc/apache2/apache2.conf3.加入 LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so<Directory /var/www/chao/wxch...原创 2019-09-05 09:51:15 · 301 阅读 · 0 评论 -
PHPExcel在使用Writer->save时出现ERR_INVALID_RESPONSE错误
出现Writer->save错误可能是很多种原因导致的,但是这其中很大部分是因为header和缓冲区的错误导致的 Fatal error: 'break' not in the 'loop' or 'switch' context in <mypath>\PHPExcel\PHPExcel\Calculation\Functions.php on line 581打开PH...原创 2019-09-07 10:24:16 · 1220 阅读 · 0 评论 -
Xampp 启动apache 失败 ,查看错误日志
AH01909: www.example.com:443:0 server certificate does NOT include an ID which matches the server name可能原因是 端口冲突微软自带的IIS7服务很好用,但是当我们有时候安装其它服务器如apache时,80端口被占用,这时我们就要关掉它。第一步,打开控制面板,选中管理工具。第二步,在管理...原创 2019-09-05 11:26:33 · 3126 阅读 · 0 评论