php7
文章平均质量分 69
php
fish_study_csdn
PHP go JAVA python 开发
展开
-
phpcomposer的介绍和中国镜像的设置
composer install背后到底是怎么运作的?我们用一张图来说明一下:Composer 就是我们安装在自己系统上的composer工具。所有 package 元数据和 zip 文件的下载、安装工作都是它帮我们完成的。从图上我们可以看到,不管是 Packagist.org 还是 Github.com 出现故障或者被墙,我们都无法正常安装 package,即便能安装的时候,也是龟速。说到这里,我们看到如果要做镜像的话,单是为 Packagist.org 做镜像显然是不够的...原创 2021-09-28 16:36:49 · 1157 阅读 · 0 评论 -
DVWA-SQL注入( SQL注入实例)
DVWA-SQL注入 - 雨中落叶 - 博客园原创 2021-09-28 10:51:23 · 1808 阅读 · 2 评论 -
php容器安装pdo_mysql扩展
用docker安装了php7.1.3,然而php中没有默认安装pdo_mysql扩展,那就来安装喽。进入php容器docker exec -it api_php /bin/bash执行安装$ docker-php-ext-install pdo pdo_mysql如果安装失败出现下面情况/usr/local/bin/docker-php-ext-enable: cannot create /usr/local/etc/php/conf.d/docker-php-ext-pdo_mys.原创 2021-08-14 14:17:23 · 455 阅读 · 0 评论 -
为docker下的php容器安装php-redis扩展【编译安装】
使用docker安装的PHPFPM容器没有Redis扩展,需要安装一下扩展。首先进入docker的PHPFPM容器docker exec -it myphpfpm /bin/bash$ curl -L -o /tmp/redis.tar.gz https://github.com/phpredis/phpredis/archive/3.1.3.tar.gz $ tar xfz /tmp/redis.tar.gz $ rm -r /tmp/redis.tar.gz $ mkdir -p.原创 2021-08-14 14:12:09 · 839 阅读 · 0 评论 -
php 扩展的安装
在安装PHP扩展时,服务器一直报然而这次我安装pdo_mysql的时候出现了版本不匹配的问题:PHP Warning: PHP Startup: pdo_mysql: Unable to initialize moduleModule compiled with module API=20151012PHP compiled with module API=20原创 2018-01-21 03:02:18 · 418 阅读 · 0 评论 -
php获取数据库表的相关信息,
由于要写接口文档和注释,发现特别麻烦,就想写个脚手架,来自动生成需要获取表的注释和表的字段类型,字段名,字段注释等1:获取表注释showtablestatuslike表名 读取表名和注释$sql = sprintf("show table status like '%s'", $table);$stmt = $dbh->prepare($sq原创 2017-07-14 11:51:45 · 1642 阅读 · 0 评论 -
UML六种关系
UML定义的关系主要有:泛化、实现、依赖、关联、聚合、组合,这六种关系紧密程度依次加强,分别看一下泛化是一种一般与特殊、一般与具体之间关系的描述,具体描述建立在一般描述的基础之上,并对其进行了扩展。在程序中是通过继承类实现的。比如狗是对动物的具体描述,在面向对象设计的时候一般把狗设计为动物的子类。表示方法:空心三角形箭头的实线,子类指向父类实现原创 2016-05-01 15:46:22 · 332 阅读 · 0 评论 -
网站的PV量的计算和建设(PHP)
你想建设一个能承受500万PV/每天的网站吗?500万PV是什么概念?服务器每秒要处理多少个请求才能应对?如果计算呢?PV是什么:PV是page view的简写。PV是指页面的访问次数,每打开或刷新一次页面,就算做一个pv。计算模型:每台服务器每秒处理请求的数量=((80%*总PV量)/(24小时*60分*60秒*40%)) / 服务器数量 。其中关键的参数是80%、40%。表示一天中有80%的请求发生在一天的40%的时间内。24小时的40%是9.6小时,有80%的请求发生一天.原创 2021-07-01 10:05:22 · 461 阅读 · 0 评论 -
微信公众号 php Protocol “https“ not supported or disabled in libcurl
php curl 请求https地址一直返回返回false按照以前做法是在请求中添加以下参数对https做处理 curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); 禁止 cURL 验证对等证书 curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);设置为 1 是检查服务器SSL证书中是否存在一个公用名(common name)。译者注:公用名(Common Name)一般来讲就...原创 2021-01-27 17:35:33 · 983 阅读 · 0 评论 -
thinkphp5.1 在phpstudy nginx 隐藏index.php 问题
近日选用phpstudy nginx测试本地项目,thinkphp5.1url('index/login/login')生成路径访问时不包含index.php,结果报404错误。必须index.php/login/login这样访问 很丑在对应的nginx 的域名配置文件中添加如下代码if (!-e $request_filename) { rewrite ^(.*)$ /index.php?s=/$1 last; break;...原创 2021-01-13 20:49:39 · 754 阅读 · 0 评论 -
mysql 防止超卖的代码示例
1 不枷锁会超卖的现象public function overBuy(){ $good = new Goods(); $good = $good->get(9); $log = new Log(); if ($good->total > 0) { $good->total = $good->total - 1; $good->save();原创 2020-11-06 18:09:05 · 247 阅读 · 1 评论 -
用户登录验证,写入队列,异步处理 密码验证失败锁定时间
<?phpnamespace app\news\controller;use app\news\model\Admin;use think\Controller;class IndexController extends Controller{ public function index() { $this->view->engine->layout(false); return view(); } publ.原创 2020-11-03 21:34:05 · 174 阅读 · 1 评论 -
猴子选大王--约瑟夫问题浅析(php 版本)
猴子选大王问题是一个十分经典的算法问题,这个问题是这样的:一堆猴子都有编号,编号是1,2,3 ...m,这群猴子(m个)按照1-m的顺序围坐一圈,从第1开始数,每数到第N个,该猴子就要离开此圈,这样依次下来,直到圈中只剩下最后一只猴子,则该猴子为大王。 这个问题要解决起来并不难,但求解的方法很多;题目的变化形式也很多,而我们统称这类问题为约瑟夫问题。这类题目基本的描述为:N个人围成一圈,从第一个开始报数,第M个将被杀掉,最后剩下一个,其余人都将被杀掉。例如N=6,M=5,被杀掉的顺序是:5,4,6原创 2020-11-03 11:33:52 · 182 阅读 · 1 评论 -
php7 源码安装swoole4及swoole的版本查看
下载地址:https://github.com/swoole/swoole-src解压缩对应的压缩包,一般swoole 文件夹中没configure文件,要用phpize去生成生成的时候可能会报错:Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF environment variable. Then, rerun this script.是因为autoconfig没有安装原创 2020-09-11 17:11:05 · 803 阅读 · 0 评论 -
[php源码安] Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF
问题在 centos 中,对 php 扩展进行编译安装时,出现下面的提示Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF environment variable. Then, rerun this script.解决方法yum install autoconfMAC 环境下:安装 autoconf:brewinstallautoconf...原创 2020-09-11 15:49:00 · 278 阅读 · 0 评论 -
使用phpstrom创建项目 图文并茂
1:使用phpstorm创建远程项目:2:选择远程项目原创 2020-07-24 20:22:02 · 470 阅读 · 0 评论 -
PHPExcel 上传下载的示例代码
1:首先用composer require phpoffice/phpexcel2: 引入相关的类:use PHPExcel;use PHPExcel_Cell;use PHPExcel_Writer_Excel5;3:下载具体代码 public function exportExcel() { $dataArr = Admin::all(); //创建PHPExcel对象 $obj = new PHPExcel();原创 2020-07-15 14:18:04 · 277 阅读 · 0 评论 -
git 使用教程 截图详解
git的常用设置:配置 git 用户名及邮箱全局配置git config --global user.name "test020"git config --global user.email "test020@163.com"配置 CRLFgit config --global core.autocrlf falsegit config --global core.safecrlf truegitk 乱码修复git config --global gui....原创 2020-07-15 14:08:48 · 614 阅读 · 2 评论 -
开发常用在线手册
jquery 手册:https://www.jb51.net/shouce/jquery1.82/PHP手册:https://www.php.net/manual/zh/about.formats.phpcss 手册:http://css.cuishifeng.cn/各种手册百度网盘下载地址:链接:https://pan.baidu.com/s/1gDbn_HDO0x9QjZYvcx6ohA 密码:mq9k...原创 2020-06-18 17:21:30 · 255 阅读 · 1 评论 -
在Windows服务器下部署PHPstudy和环境变量的配置
1:软件下载与安装官方网站:http://phpstudy.php.cn/下载phpStudy软件之后解压直接运行安装。这里需要注意安装目录,如果我们有单独规划磁盘就放到自己规定的磁盘中。没有单独规划的磁盘一路 “下一步” 就可以了2:安装完成后找到对应的安装目录:2: 配置全局变量点击编辑: 选择path 编辑,后新建,把PHP mysql composer的路径贴入对应的值,确定后重启电脑加入全局变量后,执行PHP -v ,mysql -v...原创 2020-06-18 16:16:35 · 2027 阅读 · 1 评论 -
PHP 底层原理
PHP数据类型在内核中的实现:原创 2020-02-28 18:09:55 · 135 阅读 · 0 评论 -
ThinkPHP5.0之运行原理及使用
目录结构:运行原理:(1)mvc设计模式m 模型v 视图c 控制器原理:c调度M获取数据,加载视图将数据显示给客户端(2)模板引擎技术(TP5内置的模板引擎,并不是smarty)(3)命名空间namespace app\admin\controller;app 应用admin 模块controller 控制器TP5里文件命名空间所在路径和文件目录路径相同...原创 2020-02-25 15:24:20 · 1088 阅读 · 0 评论 -
Mac 下源码安装PHP7.3.14
下载PHP7.3.14版本。https://www.php.net/downloads/distributions/php-7.3.14.tar.gztar xzvf php-7.3.14.tar.gz./configure --prefix=/usr/local/php7 --with-config-file-path=/usr/local/php7/lib/ --enabl...原创 2020-02-05 13:15:42 · 1395 阅读 · 0 评论 -
小程序开发
小程序的开发流程:微信小程序注入口地址:https://mp.weixin.qq.com/cgi-bin/wx注册成功后登录并下载小程序开发工具:微信开发工具.js 配置文件:project.config.json 项目配置app.json 全局配置page.json 页面配置sitemap.json小程序开...原创 2019-12-27 10:57:02 · 208 阅读 · 0 评论 -
PHP开发api接口安全验证
php的api接口在实际工作中,使用PHP写api接口是经常做的,PHP写好接口后,前台就可以通过链接获取接口提供的数据,而返回的数据一般分为两种情况,xml和json,在这个过程中,服务器并不知道,请求的来源是什么,有可能是别人非法调用我们的接口,获取数据,因此就要使用安全验证。原理从图中可以看得很清楚,前台想要调用接口,需要使用几个参数生成签名。时间戳:当前时间随机数:...原创 2019-12-21 16:10:25 · 316 阅读 · 0 评论 -
php api开发 token
token 设计和验证:APP自用登陆型token实现步骤:(1)数据库用户表添加token字段和time_out这个token过期时间字段(2)用户登陆时(注册时自动登陆也需要)生成一个token和过期时间存入表中(3)在其他接口调用前,判断token是否正确,正确则继续,错误则让用户重新登陆验证流程:1:服务端接收到app发送的用户名和密码,进行登录验证.(如果登录验证...原创 2019-12-21 16:04:17 · 657 阅读 · 0 评论 -
实现页面静态化,PHP是如何实现的?
随着网站的内容的增多和用户访问量的增多,无可避免的是网站加载会越来越慢,受限于带宽和服务器同一时间的请求次数的限制,我们往往需要在此时对我们的网站进行代码优化和服务器配置的优化。一般情况下会从以下方面来做优化1、动态页面静态化2、优化数据库3、使用负载均衡4、使用缓存5、使用CDN加速纯静态网站在网站中是怎么实现的?纯静态的制作技术是需要先把网站的页面总结出来,分为多...原创 2019-12-18 22:32:17 · 236 阅读 · 0 评论 -
高并发缓存架构,缓存雪崩、缓存穿透之谜
什么是 redis 的雪崩、穿透和击穿?redis 崩溃之后会怎么样?系统该如何应对这种情况?如何处理 redis 的穿透?面试官心理分析其实这是问到缓存必问的,因为缓存雪崩和穿透,是缓存最大的两个问题,要么不出现,一旦出现就是致命性的问题,所以面试官一定会问你。面试题剖析缓存雪崩对于系统 A,假设每天高峰期每秒 5000 个请求,本来缓存在高峰期可以扛住每秒 4000 个请求...原创 2019-12-20 11:38:42 · 338 阅读 · 1 评论 -
MySQL分区
分区和手动分表对比mysql的分区操作还比较简单,好处是也不用自己动手建表进行分区,和水平分表有点像分表 分区 手动分表 分区 多张数据表 一张数据表 重复数据的风险 没有数据重复的风险 写入多张表 写入一张表 没有统一的约束限制 强制的约束限制 1、mysql分区简介?表分区:分区是根据一定的规则,数据库把一个...原创 2019-12-18 20:45:10 · 444 阅读 · 0 评论 -
RPC 详解
一个阳光明媚的早晨,老婆又在翻看我订阅的技术杂志。“老公,什么是RPC呀,为什么你们程序员那么多黑话!”,老婆还是一如既往的好奇。“RPC,就是Remote Procedure Call的简称呀,翻译成中文就是远程过程调用嘛”,我一边看着书,一边漫不经心的回答着。“啥?你在说啥?谁不知道翻译成中文是什么意思?你个废柴,快给我滚去洗碗!”“我去。。。”,我如梦初醒,我对面坐着的可不是一个程...原创 2019-12-05 16:01:55 · 778 阅读 · 0 评论 -
php5.6安装swoole扩展
php5.6安装swoole扩展 下载 编译 修改php.ini 加载swoole扩展 重启服务器 验证是否安装成功?下载https://pecl.php.net/package/swoole找到对应的版本这里安装swoole-1.10.5版本php版本为5.6.9linux系统为centos7.5wget https://pecl...原创 2019-11-05 14:50:28 · 1637 阅读 · 1 评论 -
php -m看到的扩展和phpinfo不一样
最近在做php的项swoole sudo /usr/local/php7.2/sbin/php-fpm -c /usr/local/php7.2/etc/php-fpm.conf然后项目就是各种扩展找不到,各种报错。 -c <path>|<file> Look for php.ini file in this directoryphp -m和phpinf...原创 2019-10-27 16:10:42 · 386 阅读 · 0 评论 -
PHP 判断文件是否为图片的方法
方法一 利用 getimagesize 函数获取图片信息,然后进行判断:function isImage($filename){ $types = '.gif|.jpeg|.png|.bmp'; //定义检查的图片类型 if(file_exists($filename)) { if (($info = @getimagesize($filen...原创 2019-10-20 16:48:50 · 1053 阅读 · 0 评论 -
centos 源码安装PHP 常见问题
configure: error: Please reinstall readline - I cannot find readline.hyum -y install readline-devel编译安装php报错PHP configure: error: mcrypt.h not found. Please reinstall libmcrypt. 解决办法使用yum命令安装 ...原创 2019-10-19 15:13:23 · 333 阅读 · 0 评论 -
mysql 数据库中乐观锁、悲观锁、共享锁和排它锁的理解
乐观锁乐观锁不是数据库自带的,需要我们自己去实现。乐观锁是指操作数据库时(更新操作),想法很乐观,认为这次的操作不会导致冲突,在操作数据时,并不进行任何其他的特殊处理(也就是不加锁),而在进行更新后,再去判断是否有冲突了。通常实现是这样的:在表中的数据进行操作时(更新),先给数据表加一个版本(version)字段,每操作一次,将那条记录的版本号加1。也就是先查询出那条记录,获取出versio...原创 2019-10-12 10:36:39 · 244 阅读 · 1 评论 -
php英语精简版
abstract抽象的 -挨伯丝拽克特access存取、访问 -挨克色丝account账户 -厄靠恩特action动作 -爱克身activate激活 -爱克特维特active活动的 -爱克得adapter适配器 -厄呆破得address地址 -厄拽物丝alias 别名 -爱力儿丝align 排列、对齐 -厄烂append 附加 -厄喷的applicati...原创 2019-06-07 17:42:34 · 582 阅读 · 0 评论 -
PHP 常用英语精简1
alias 别名 -爱力儿丝align 排列、对齐 -厄烂argument引数(传给函式的值) -阿记门忒--(te一生)array 数组 -厄瑞assign 赋值 -厄撒恩authorization 授权 -啊破瑞贼身echo 输出 -爱扣define 规定 -(dei一生)饭function 函数 -方恩身file 路径 -(fai一生)backgrou...原创 2019-06-07 17:56:41 · 356 阅读 · 0 评论 -
PHP 常用术语
分布式系统分布式系统(distributed system)由多台计算机和通信的软件组件通过计算机网络连接(本地网络或广域网)组成。分布式系统是建立在网络之上的软件系统。正是因为软件的特性,所以分布式系统具有高度的内聚性和透明性。因此,网络和分布式系统之间的区别更多的在于高层软件(特别是操作系统),而不是硬件。分布式系统可以应用在不同的平台上如:Pc、工作站、局域网和广域网上等。...原创 2019-06-04 16:14:28 · 610 阅读 · 0 评论 -
php 开发常用英语单词
abstract抽象的 -挨伯丝拽克特access存取、访问 -挨克色丝account账户 -厄靠恩特action动作 -爱克身activate激活 -爱克特维特active活动的 -爱克得adapter适配器 -厄呆破得address地址 -厄拽物丝----------------------------------------------------------...原创 2019-06-06 21:11:55 · 2248 阅读 · 4 评论 -
高并发大流量网站的优化方案
高并发常用术语:QPS:每秒钟请求或者查询的数量,在互联网领域,指每秒响应请求数(指HTTP请求) 吞吐量:单位时间内处理的请求数量(通常由QPS与并发数决定) 响应时间:从请求发出到收到响应花费的时间,例如系统处理一个HTTP请求需要100ms,这个100ms就是系统的响应时间 PV:综合浏览量(Page View),即页面浏览量或者点击量,一个访客在24小时内访问的页面数量,同一个人...原创 2019-05-23 11:22:12 · 1034 阅读 · 0 评论