php
文章平均质量分 54
离阳
这个作者很懒,什么都没留下…
展开
-
api 接口签名 验签
开发过程中,我们经常会与接口打交道,有的时候是调取别人网站的接口,有的时候是为他人提供自己网站的接口,但是在这调取的过程中都离不开签名验证。我们在设计签名验证的时候,请注意要满足以下几点:时效性:每次请求的时效,过期作废等。 唯一性:每次的签名是唯一的。 完整性:能够对传入数据进行验证,防止篡改。生成签名时需要设置一个密钥(secret),只有发送方,和接收方知道。请求方:将请求参数,签名sign除外,进行升序排列。然后转为字符串,按照双方约定的加密方式进行加密 ksort($d原创 2021-06-07 15:15:29 · 612 阅读 · 0 评论 -
RabbitMQ 消息队列
RabbitMQ简介RabbitMQ 是一个由 Erlang 语言开发的 AMQP 的开源实现。AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之亦然。AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。RabbitMQ是一个开源的AMQP实现,服务器端用Erlang语言编写,支持多种客户端,如原创 2021-04-19 10:47:10 · 295 阅读 · 1 评论 -
laravel验证码扩展gregwar/captcha
在laravel中通过第三方扩展包mews/captcha作为基础来实现 Laravel 中的验证码功能两种安装方法:第一种:在项目根目录下执行composer require gregwar/captcha第二种:或者在composer.json 的 requier 中添加"gregwar/captcha": "1.*"然后执行composer update即可 "require": { ...省略..., ...省略..., ...原创 2021-04-13 16:16:15 · 376 阅读 · 0 评论 -
PHP中empty和if判断
empty()函数用于检查一个变量是否为空。empty() 判断一个变量是否被认为是空的。当一个变量并不存在,或者它的值等同于 FALSE,那么它会被认为不存在。如果变量不存在的话,empty()并不会产生警告。if 语句用来判断所包含值的布尔值,即true和false两值,通过判断变量的布尔值来决定if 语句的操作。要明确地将一个值转换成boolean,用(bool)或者(...原创 2019-07-04 15:02:26 · 2576 阅读 · 0 评论 -
PHP中数组常用函数
一、数组操作的基本函数数组的键名和值:array_values($arr) 返回数组中所有的值(不保留键名);被返回的数组将使用数值键,从 0 开始且以 1 递增array_keys(array,value,strict) 返回包含数组中所有键名的一个新数组array_flip($arr) 数组中的值与键名互换(如果有重复前面的会被后面的覆盖)in_array("str...原创 2019-05-06 13:12:38 · 184 阅读 · 0 评论 -
PHP中mktime函数获取时间段开始和结束段时间戳
php 获取今日、昨日、上周、本月的起始时间戳和结束时间戳的方法,主要使用到了 php 的时间函数 mktime()。mktime函数用法如下:mktime(hour,minute,second,month,day,year,is_dst)参数描述hour 可选。规定小时。minute 可选。规定分钟。second 可选。规定秒。month 可选。规定用数字表示的月。...原创 2019-03-13 13:33:31 · 487 阅读 · 0 评论 -
PHP中处理数组,字符串的常用函数以及对应的返回值
函数对编程语言的重要性不言而喻。平时我们可能没办法记住一门编程语言的全部函数,但至少要有印象。在工作中碰到相关需求的时候可以想到,这样就可以大大增加我们的开发速度。这里总结一下PHP中处理数组,字符串的常用函数及对应的返回值。处理数组:(1)array() 创建数组(2)in_array() 判断元素是否在数组中(3)count() 返回数组中元素的数目(4)array_me...原创 2018-12-15 19:54:49 · 998 阅读 · 0 评论 -
代码规范工具之PHP CS Fixer
正如一千个人眼中有一千个哈姆雷特,每个程序员的代码风格也会有很大的不同。虽说有标准的代码开发规范指南,可毕竟不是每个人都能严格按照规范去写代码,另外手动去调整代码规范也是很麻烦的一件事。所以我们可以借助工具去规范我们的代码。或许有的人会说利用工具容易养成坏的习惯了,应该靠自己养成规范的习惯了,我并不反对。我也认为养成规范代码的习惯很重要,我说的使用工具并不是让我们平时不去考虑代码开发规范随意去写,...原创 2018-12-08 16:33:30 · 1029 阅读 · 0 评论 -
关于tp框架操作数据表的返回值
由于在工作中很多对数据表的操作都是通过框架里方法去完成的,所以知道使用这些方法时的返回参数也是很重要的。这里就总结一下。1.首先是create操作add 方法,若发生错误,返回false;否则返回创建的id值;2.update操作save、setField、setInc、setDec 返回值是影响的记录数(有可能为0),更新出错返回false,因此一定要用恒等来判断是否更新失败...原创 2018-11-16 09:52:35 · 996 阅读 · 0 评论 -
ThinkPHP的系统流程
由于在项目中使用的是tp框架,可是发现虽然一直在用,但其实并没有深入了解,也不是很清楚具体的流程。于是在手册上查阅了一下,仅供参考。ThinkPHP框架开发的应用的标准执行流程如下:用户URL请求 调用应用入口文件(通常是网站的index.php) 载入框架入口文件(ThinkPHP.php) 记录初始运行时间和内存开销 系统常量判断及定义 载入框架引导类(Think\Thin...原创 2018-11-15 17:31:27 · 202 阅读 · 0 评论 -
PHP中常用的字符串截取函数
1.substr(源字符串,起始位置[,长度])-截取字符串返回部分字符串<?php $str ="phpddt.com"; echo substr($str,2);//pddt.com echo substr($str,2,3);//pdd echo substr($str,-2);//om 负数从结尾开始取?>但是当你截取中文字符串的时候...原创 2018-10-31 21:48:18 · 2318 阅读 · 0 评论 -
打印机打印中文,截取字符时出现乱码问题
最近在工作中遇到了飞鹅打印机打印出来中文变成 ‘???’的乱码问题。我们的后端使用的PHP,把拼接好的字符串转换成json格式,然后请求飞鹅云打印机的接口。由于打印排版问题,有的字符串截取开放到第二行显示。结果在测试的时候却发现了打印出来的小票存在乱码问题。排查了一下,代码在字符串在第二十一个字符处截取开,飞鹅打印机默认一个汉字占三个字符,这样截取是不会霸汉字断开的。但字符串中如果...原创 2018-10-28 22:40:13 · 3857 阅读 · 0 评论 -
PHP中利用mysql的锁机制,实现记录访问人数,解决并发问题
上来先上代码$db=mysqli_content('127.0.0.1','root','123456','test');mysqli_query($db,'set names utf8');$preson=1;mysqli_query($db,"lock tables lock_num write");$sql="select num from lock_num where id=1";...原创 2018-05-22 11:48:19 · 609 阅读 · 0 评论 -
PHP中简单的数组查找算法
PHP中对于数组的查找可以用顺序查找或二分法查找。其中顺序查找比较简单,就是逐个比较查找。但缺点也较明显,如果查找的元素恰巧在最后一个,循环的次数过多。 1.顺序查找算法描述 在数组中逐个查找,确认是否有某个元素,存在时返回元素的位置信息。可以设置标志信息,初始值为false.找到直接输出位置,并将标志设置为true。循环结束标志仍为false,则没有找到。 ...原创 2018-03-21 00:11:52 · 397 阅读 · 0 评论 -
php中的文件包含
在PHP中可能很多地方需要用到文件包含。所谓的PHP中文件包含(载入)是指:将部分代码(经常用到的)分离出来,放在单独的文件中;在需要的页面引入对应的文件。PHP代码执行过程: 1.读取代码文件 2.编译(转换为二进制信息,生成opcode) 3.zendEngine解析Opcode,进行运算 4.将执行结果以HTML形式返回。 需要注意到是,引入的文件,单独编译;如果引入的文件中有...原创 2018-03-19 19:27:53 · 808 阅读 · 0 评论