-
php利用云片网实现短信验证码功能的示例代码
所属栏目:[PHP教程] 日期:2021-03-15 热度:166
本文将以php举例,介绍网页短信验证码功能的实现。 在众多的第三方短信服务商中我选择了云片网这个短信服务商,本文也将尽可能利用最简单的方式去帮助广大开发者解决短信验证码功能模块的实现。 再次之前我也参考了大部分网上的博客等,大多数都是把云片网[详细]
-
php单元测试phpunit入门实例教程
所属栏目:[PHP教程] 日期:2021-03-15 热度:51
本篇章节讲解php单元测试phpunit。分享给大家供大家参考,具体如下: 这篇文章提供了一些phpunit官方教程没有提到的信息,帮助初学者快速了解php单元测试,在phpunit官网提供了详细的中文教程,可选多种格式下载 phpunit官网地址:https://phpunit.de/ 何[详细]
-
swoole和websocket简单聊天室开发
所属栏目:[PHP教程] 日期:2021-03-15 热度:101
首先,我想说下写代码的一些习惯,第一,任何可配置的参数或变量都要写到一个config文件中。第二,代码中一定要有日志记录和完善的报错并记录报错。言归正传,swoole应该是每个phper必须要了解的,它号称重新定义了php。此聊天室利用了swoole高并发并且异[详细]
-
PHP流Streams、包装器wrapper概念与用法实例详解
所属栏目:[PHP教程] 日期:2021-03-15 热度:56
本篇章节讲解PHP流Streams、包装器wrapper概念与用法。分享给大家供大家参考,具体如下: 流Streams这个概念是在php4.3引进的,是对流式数据的抽象,用于统一数据操作,比如文件数据、网络数据、压缩数据等,以使可以共享同一套函数,php的文件系统函数就[详细]
-
PHP实现求两个字符串最长公共子串的方法示例
所属栏目:[PHP教程] 日期:2021-03-15 热度:81
本篇章节讲解PHP实现求两个字符串最长公共子串的方法。分享给大家供大家参考,具体如下: 前面一篇是基于java改进而来,这里再来看另一种公共子串算法。 代码如下: =0 $j-1>=0)?$c[$i-1][$j-1]:0; $n = ($a[$i] == $b[$j]) ? $n+1:0; $c[$i][$j] = $n; }}[详细]
-
PHP开发之归档格式phar文件概念与用法详解【创建,使用,解包还原
所属栏目:[PHP教程] 日期:2021-03-15 热度:157
副标题#e# 本篇章节讲解PHP开发之归档格式phar文件概念与用法。分享给大家供大家参考,具体如下: 一个php应用程序往往是由多个文件构成的,如果能把他们集中为一个文件来分发和运行是很方便的,这样的列子有很多,比如在window操作系统上面的安装程序、一[详细]
-
PHP实现求解最长公共子串问题的方法
所属栏目:[PHP教程] 日期:2021-03-15 热度:140
本篇章节讲解PHP实现求解最长公共子串问题的方法。分享给大家供大家参考,具体如下: 题目: 如果字符串一的所有字符按其在字符串中的顺序出现在另外一个字符串二中,则字符串一称之为字符串二的子串。 注意,并不要求子串(字符串一)的字符必须连续出现[详细]
-
PHP实现验证码校验功能
所属栏目:[PHP教程] 日期:2021-03-15 热度:74
验证码的校验是利用PHP中的 SESSION功能来实现。在最顶端声明函数 session_start(); 告诉服务器我们要用这个函数的功能。 接下来我们用到的就是验证码实现的代码。这里用英文数字的代码为例。 然后在验证码实现之前声明一个空变量,用来存放验证码。 for($[详细]
-
PHP实现链式操作的三种方法详解
所属栏目:[PHP教程] 日期:2021-03-15 热度:199
本篇章节讲解PHP实现链式操作的三种方法。分享给大家供大家参考,具体如下: 在php中有很多字符串函数,例如要先过滤字符串收尾的空格,再求出其长度,一般的写法是: 如果要实现类似js中的链式操作,比如像下面这样应该怎么写? trim()->strlen() 下面分[详细]
-
php大小写转换函数(strtolower、strtoupper)用法介绍
所属栏目:[PHP教程] 日期:2021-03-15 热度:187
1,将字符串转换成小写 strtolower函数: 该函数将传入的字符串参数所有的字符都转换成小写,并以小定形式放回这个字符串。 例子: 输出: 2,将字符转成大写 strtoupper函数:该函数的作用同strtolower函数相反,是将传入的字符参数的字符全部转换成大写,[详细]
-
PHP命令空间namespace及use的用法小结
所属栏目:[PHP教程] 日期:2021-03-14 热度:141
副标题#e# 命名空间一个最明确的目的就是解决重名问题,PHP中不允许两个函数或者类出现相同的名字,否则会产生一个致命的错误。这种情况下只要避免命名重复就可以解决,最常见的一种做法是约定一个前缀。 使用namespace的目的: 团队合作项目时,避免与团队[详细]
-
PHP递归实现汉诺塔问题的方法示例
所属栏目:[PHP教程] 日期:2021-03-14 热度:155
本篇章节讲解PHP递归实现汉诺塔问题的方法。分享给大家供大家参考,具体如下: 汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗[详细]
-
PHP开发实现微信退款功能示例
所属栏目:[PHP教程] 日期:2021-03-14 热度:153
本篇章节讲解PHP开发实现微信退款功能。分享给大家供大家参考,具体如下: 最近在调微信退款接口,发现有许多坑,更大家分享一下 ① 要是在测试的时候,网页提示 curl 58 说明 证书的路径出现问题(这里要填物理路径,也就是绝对路径)② 网页提示curl 52[详细]
-
PHP中register_shutdown_function函数的基础介绍与用法详解
所属栏目:[PHP教程] 日期:2021-03-14 热度:90
副标题#e# 前言 最近在看《PHP核心技术与最佳实践》,里面有使用到一个函数,register_shutdown_function,由于之前没有用过该函数,就去查了一下资料,就觉得是个很实用的函数,所以这里写一下这个函数的用法。下面话不多说了,来一起看看详细的介绍吧。 1[详细]
-
PHP微信企业号开发之回调模式开启与用法示例
所属栏目:[PHP教程] 日期:2021-03-14 热度:119
本篇章节讲解PHP微信企业号开发之回调模式开启与用法。分享给大家供大家参考,具体如下: 暑假实习,领导安排开发微信企业号。在此对遇到的问题进行记录,分享给遇到同样问题的小伙伴,希望对小伙伴们有帮助。微信企业号注册部分就不用多说了,今天记录微[详细]
-
PHP实现统计所有字符在字符串中出现次数的方法
所属栏目:[PHP教程] 日期:2021-03-14 热度:64
本篇章节讲解PHP实现统计所有字符在字符串中出现次数的方法。分享给大家供大家参考,具体如下: 先来看看效果: 算法: 循环一次字符串(本例的 $str ),把出现过的字符串记录在一个数组(如本例的 $strRecord )内,如果已经此记录函数已经有,则不记录[详细]
-
基于PHP-FPM进程池探秘
所属栏目:[PHP教程] 日期:2021-03-14 热度:154
副标题#e# PHP 支持多进程而不支持多线程;PHP-FPM 在进程池中运行多个子进程并发处理所有连接请求。通过 ps 查看PHP-FPM进程池(pm.start_servers = 2)状态如下: 从列表中可以看出,进程池www中有两个尚处于空闲状态的子进程PID 8和 PID 9。注:NLWP指轻量[详细]
-
浅谈PHP接入(第三方登录)QQ登录 OAuth2.0 过程中遇到的坑
所属栏目:[PHP教程] 日期:2021-03-14 热度:78
前言 绝大多数网站都集成了第三方登录,降低了注册门槛,增强了用户体验。最近看了看 QQ 互联上 QQ 登录的接口文档。接入 QQ 登录的一般流程呢,是这样的:先申请开发者 -> 然后创建应用(拿到一组 AppId 和 AppKey)-> 获取 access_token -> 获取 openid[详细]
-
PHP多进程之pcntl_fork的实例详解
所属栏目:[PHP教程] 日期:2021-03-14 热度:133
PHP多进程编之pcntl_fork的实例详解 其实PHP是支持并发的,只是平时很少使用而已。平时使用最多的应该是使用PHP-FMP调度php进程了吧。 但是,PHP的使用并不局限于做Web,我们完全也可以使用PHP来进行系统工具类的编程,做监控或者是运维。在使用这些方向的[详细]
-
PHP长网址与短网址的实现方法
所属栏目:[PHP教程] 日期:2021-03-14 热度:141
顾名思义,长链接就是一个很长的链接;短链接就是一个很短的链接。长链接可以生成短链接,短链接来源于长链接。 什么是长链接、短链接 顾名思义,长链接就是一个很长的链接;短链接就是一个很短的链接。长链接可以生成短链接,短链接来源于长链接。 为什么要[详细]
-
php封装单文件上传到数据库(路径)
所属栏目:[PHP教程] 日期:2021-03-14 热度:74
1.首先思考一个问题上传到数据库是上传的图片还是图片地址这里我们上传的是图片地址,因为图片或音频存数据库中过大,数据库会崩掉。 下面是封装的文件上传的方法: $maxSize){ return [0,'传的文件超过最大限制']; } //判断文件的mime类型 if(!in_array($[详细]
-
利用PHP实现开心消消乐的算法示例
所属栏目:[PHP教程] 日期:2021-03-14 热度:165
副标题#e# 前言 本文主要介绍了关于PHP如何实现我们大家都知道的开心消消乐的算法,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。 一、需求描述: 1、在一个8*8的矩阵方格中随机出现5种颜色的色块。 2、当有三个或以上色块在横向或纵[详细]
-
如何直接访问php实例对象中的private属性详解
所属栏目:[PHP教程] 日期:2021-03-14 热度:140
前言 本文主要介绍了关于如何直接访问php实例对象中private属性的相关内容,在介绍关键部分之前,我们先回顾一下php面向对象的访问控制。 对属性或方法的访问控制,是通过在前面添加关键字 public(公有),protected(受保护)或 private(私有)来实现的[详细]
-
深入理解PHP中mt_rand()随机数的安全
所属栏目:[PHP教程] 日期:2021-03-14 热度:129
副标题#e# 前言 在前段时间挖了不少跟mt_rand()相关的安全漏洞,基本上都是错误理解随机数用法导致的。这里又要提一下php官网manual的一个坑,看下关于mt_rand()的介绍:中文版^cn 英文版^en,可以看到英文版多了一块黄色的 Caution 警告 很多国内开发者估计[详细]
-
彻底搞懂PHP 变量结构体
所属栏目:[PHP教程] 日期:2021-03-14 热度:123
PHP5 中的 zval 多数文章,在提到PHP5 变量结构体的时候,都提到:sizeof(zval) == 24,sizeof(zvalue_value) == 16,实际上这个论述并不准确,在 CPU 为 64bit 时,这个结果是正确的。 但当 CPU 为32bit 时: sizeof(zval) == 16,sizeof(zvalue_value) ==[详细]