重启php-fpm
PHP-FPM是一款简单好用的PHP FastCGI进程管理工具。
它可以和Apache、Nginx或其他服务器一起构建完整的PHP环境。
接下来我们看看在更改了php.ini 文件后,如何stop、restart或者reload PHP-FPM,以使修改生效。
1 修改php.ini或www.conf?
修改php.ini文件:
$ php --ini # 确定php.in ...
PHP基于Redis实现轻量级延迟队列
延迟队列,顾名思义它是一种带有延迟功能的消息队列。 那么,是在什么场景下我才需要这样的队列呢?
一、背景
先看看一下业务场景:
1.会员过期前3天发送召回通知
2.订单支付成功后,5分钟后检测下游环节是否都正常,比如用户购买会员后,各种会员状态是否都设置成功
3.如何定期检查处于退款状态的订单是否已经退款成功?
...
PHP字符逃逸导致的对象注入
1.漏洞产生原因:
序列化的字符串在经过过滤函数不正确的处理而导致对象注入,目前看到都是因为过滤函数放在了serialize函数之后,要是放在序列化之前应该就不会产生这个问题
?php
function filter($string){
$a = str_replace('x','zz',$string);
return $a;
}
$username = "tr1ple";
$password = "aaaaax";
$user ...
什么是PHP?
 HP起源于1995年,由Rasmus Lerdorf开发。到现在,PHP已经历了21年的时间洗涤,成为全球最受欢迎的脚本开发语言之一。由于PHP 5是一种面向对象、完全跨平台的新型Web开发语言。所以从开发者角度考虑还是从经济角度考虑,都是非常实用的。PHP语法结构简单、易于入门,很多功能只需一个函数就能实现 ...
php Swoole实现毫秒级定时任务
项目开发中,如果有定时任务的业务要求,我们会使用linux的crontab来解决,但是它的最小粒度是分钟级别,如果要求粒度是秒级别的,甚至毫秒级别的,crontab就无法满足,值得庆幸的是swoole提供的强大的毫秒定时器。应用场景举例我们可能会遇到这样的场景:
场景一:每隔30秒获取一次本机内存使用率
场景二:2分钟后执行报 ...
PHP实现微信提现功能
提现必须得用双向证书、所以大家一定要在微信的商户平台找到相应的地方去设置、因为做这个提现已经有一段时间了、所以设置微信商户平台的那几个地方没有图的情况、也说不清楚、下次再做提现的时候、给大家分享如何设置商户平台那几个地方、不是很难、下面贴代码
注意事项:商户打款时是从商户可用余额中减钱,所以确保商户 ...
php laravel框架生成二维码
一、配置
1.在项目根目录输入命令
composer require simplesoftwareio/simple-qrcode 1.3.*
2.在config/app.php 的 providers 数组里添加服务提供者.
SimpleSoftwareIO\QrCode\QrCodeServiceProvider::class
3.在app/config/app.php 的 aliases 数组里添加别名.
'QrCode' => SimpleSof ...
PHP读取Excel内的图片
今天接到了一个从Excel内读取图片的需求,在网上查找了一些资料,基本实现了自己的需求,不过由于查到的一些代码比较久远,里面一些库方法已经被移除不存在了,所以不能直接移植到自己的项目里,需要稍加改动一下。
这里介绍一下分别使用phpspreadsheet和PHPExcel扩展库来实现读取Excel内图片的功能:
PHPSpreadsheet
首先 ...
php如何生成 uuid(总结)
php如何生成 uuid(总结)
一、总结
一句话总结:
UUID的全拼为“Universally Unique Identifier”,可以译为“通用唯一识别码”。
UUID是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的。通常平台 会提供生成UUID的API。UUID按照开放软件基金会(OSF)制定的标准计算,用到了以太网卡地址、纳秒级时间 ...
PHP 性能优化 - php.ini 配置
内存
默认设置
memory_limit = 128M
单个进程可使用的内存最大值,这个值的设定可以从以下几点考虑:
应用的类型。如果是内存集中型应用,可增加该值;
单个 PHP 进程平均消耗的内存,该值可通过多次运行同一个脚本来计算平均值;
能负担多少个 php-fpm 进程;该值等于分配的总内存除以单个 PHP 进程平均消耗的内存;
&nb ...
2019年PHP面试题附答案(实战经验)
出于一些原因近期做了一次工作变动,在职交接近一个半月时间大概面试了十五家公司,并且得到了自己比较满意的offer,最后基本上无缝衔接了新工作。总体来说,虽然准备的很充分,但面试期间还是暴露了许多问题,所以做下总结,供大家和自己以后参考,主要分四部分讲述: 简历方面,格式内容包括七个板块,个人 ...
php 下载图片并打包成Zip格式压缩包
前言:最近公司有个需要下载多个图片并打包成压缩包的需求,下面来看看具体是怎么做的
1、没什么说的,懒得说啥,直接看代码
/**
* 下载图片并生成压缩包
* @param $data 图片数组,一维
* @param $tmpDir 存放路径
* @return string
*/
public function downloadZipImg()
...
Java & PHP RSA 互通密钥、签名、验签、加密、解密
RSA加密算法是一种非对称加密算法。在公开密钥加密和电子商业中RSA被广泛使用。RSA是1977年由罗纳德·李维斯特(Ron Rivest)、阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)一起提出的。当时他们三人都在麻省理工学院工作。RSA就是他们三人姓氏开头字母拼在一起组成的。
RSA是第一个比较完善的公开密钥 ...
PHP 精典面试题(附答案)
1.输出Mozilla/4.0(compatible;MISIE5.01;Window NT 5.0)是,可能输出的语句是?
A:$_SERVER['HTTP_USER_AGENT_TYPE'];
B: $_SERVER['HTTP_USER_AGENT'];
C: $_SERVER['USER_ACENT'];
D: $_SERVER['AGENT'];
2.下面功能php无法实现的是?
A: 服务端脚本运行;
B: 命令行脚本运行;
C: 客户端 ...
PHP通过exec执行git pull
目标
项目没有使用Jenkins部署,使用的是Gitlab+ECS,要实现代码的自动部署
想法
使用Gitlab的钩子,当某个分支的代码提交之后,访问一个URL,实现代码的自动部署。这里使用PHP的exec方法,执行“git pull”操作
Tips:这种方法不是百分百靠谱,万一代码冲突就......
实现
目的:访问 http://xxx.com/index.php?project=hel ...
go-micro+php+consul简单的微服实现
首先我们用go-micro构建一个服务。(关于go-micro的使用可以参照官方实例或者文档)
//新建一个微服务
micro new --type "srv" user-srv
定义我们的服务,这里定义两个rpc服务,Register和User
1 // 修改proto
2 syntax = "proto3";
3
4 package go.micro.srv.user;
5
6 service User {
...
PHP laravel+thrift+swoole打造微服务框架
Laravel作为最受欢迎的php web框架一直广受广大互联网公司的喜爱。
笔者也参与过一些由laravel开发的项目。虽然laravel的性能广受诟病但是业界也有一些比较好的解决方案,比如堆机器,比如使用swoole进行加速。
一个项目立项到开发上线,随着时间和需求的不断激增,会越来越复杂,变成一个大项目,如果前期项目架构没设计 ...
PHP 高级面试115题汇总(含答案)
1、给你四个坐标点,判断它们能不能组成一个矩形,如判断 ([0,0],[0,1],[1,1],[1,0]) 能组成一个矩形。勾股定理,矩形是对角线相等的四边形。只要任意三点不在一条直线上,任选一点,求这一点到另外三点的长度的平方,两个短的之和如果等于最长的,那么这就是矩形。
2、写一段代码判断单向链表中有没有形成环,如果形成环 ...
php伪协议
PHP支持的伪协议
file:// — 访问本地文件系统
http:// — 访问 HTTP(s) 网址
ftp:// — 访问 FTP(s) URLs
php:// — 访问各个输入/输出流(I/O streams)
zlib:// — 压缩流
data:// — 数据(RFC 2397)
glob:// — 查找匹配的文件路径模式
phar:// — PHP 归档
ssh2:// — Secure Shell 2
rar:// — RAR
ogg:// ...
PHP 汉字转拼音
/**
+------------------------------------------------------
* PHP 汉字转拼音
+------------------------------------------------------
* 使用方法:
* $py = new PinYin();
* echo $py->getpy("PHP汉字转拼音");
+------------------------------------------------------
*/
class Pinyi ...