-
PHP实现统计一个数字在排序数组中出现次数的方法
所属栏目:[PHP教程] 日期:2021-04-02 热度:188
本篇章节讲解PHP实现统计一个数字在排序数组中出现次数的方法。分享给大家供大家参考,具体如下: 题目 统计一个数字在排序数组中出现的次数。 题解 既然是排序数组,使用二分查找是效率最高的。找到之后再向两侧拓展一下。 代码 >1; if($data[$middle]==$[详细]
-
PHP调用ffmpeg对视频截图并拼接脚本
所属栏目:[PHP教程] 日期:2021-04-02 热度:199
PHP脚本调用ffmpeg对视频截图并拼接,供大家参考,具体内容如下 目前支持MKV,MPG,MP4等常见格式的视频,其他格式有待测试 12P 一张截图平均生成时间 1.64s 100个视频,大概需要2分半左右 9P 一张截图平均生成时间 1.13s 100个视频,大概需要2分钟左右 6P 一[详细]
-
PHP实现判断二叉树是否对称的方法
所属栏目:[PHP教程] 日期:2021-04-02 热度:144
本篇章节讲解PHP实现判断二叉树是否对称的方法。供大家参考研究具体如下: 问题 请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。 题解 递归判断二叉树两侧。 实现代码: val =[详细]
-
PHP利用一行代码删除目录下所有文件方法示例
所属栏目:[PHP教程] 日期:2021-04-02 热度:132
前言 想必很多人都会写几行甚至几十行代码使其列出所有文件变为数组进行删除,但是glob函数分分钟解决问题!下面来一起看看详细的介绍吧。 glob语法说明: glob() 函数依照 libc glob() 函数使用的规则寻找所有与 pattern 匹配的文件路径,类似于一般 shells[详细]
-
PHP7扩展开发之基于函数方式使用lib库的方法详解
所属栏目:[PHP教程] 日期:2021-04-01 热度:81
本篇章节讲解PHP7扩展开发之基于函数方式使用lib库的方法。供大家参考研究具体如下: 前言 首先说下什么是lib库。lib库就是一个提供特定功能的一个文件。可以把它看成是PHP的一个文件,这个文件提供一些函数方法。只是这个lib库是用c或者c++写的。[详细]
-
Yii2中的场景(scenario)和验证规则(rule)详解
所属栏目:[PHP教程] 日期:2021-04-01 热度:166
前言 场景,顾名思义,就是一个情景,一种场面。在yii2中也有场景,这个场景跟你所理解的场景含义差不多。 和用户有交互的系统必不可少的功能包括收集用户数据、校验和处理。实际业务中,往往还需要将数据进行持久化存储。出于安全考虑,开发人员应当牢牢把[详细]
-
MixPHP、Yii和CodeIgniter的并发压力测试小结
所属栏目:[PHP教程] 日期:2021-04-01 热度:139
前言 MixPHP 是一个基于 Swoole 的高性能框架,CodeIgniter 是一个元老级的轻量级框架,Yii 是一个非常流行的框架,以下是三个框架的对比。 由于Yii/CodeIgniter 是基于 Apache/PHP-FPM 的传统框架,如果使用 MixPHP 的正常 Swoole 部署方式来对比,显得有些[详细]
-
PHP基于非递归算法实现先序、中序及后序遍历二叉树操作示例
所属栏目:[PHP教程] 日期:2021-04-01 热度:130
本篇章节讲解PHP基于非递归算法实现先序、中序及后序遍历二叉树操作。供大家参考研究具体如下: 概述: 二叉树遍历原理如下: 针对上图所示二叉树遍历: ABDHECFG HDBEAFCG HDEBFGCA 实现方法: 先序遍历: 利用栈先进后出的特性,先访问根节点,[详细]
-
PHP使用两个栈实现队列功能的方法
所属栏目:[PHP教程] 日期:2021-04-01 热度:157
本篇章节讲解PHP使用两个栈实现队列功能的方法。供大家参考研究具体如下: 问题 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 解决思路 两个栈。出栈的时候,如果栈2不为空,就出栈2。如果栈2为空,就把栈1的出栈[详细]
-
php实现的mongoDB单例模式操作类
所属栏目:[PHP教程] 日期:2021-04-01 热度:187
本篇章节讲解php实现的mongoDB单例模式操作类。供大家参考研究具体如下: 看了好多mongo类都不尽人意。最后发现根本不需要自己封装类。php mongo 的扩展自带的方法就已经很方便了 但是习惯性的把数据库连接部分封装起来。最后我就封装了一个单例模[详细]
-
PHP实现按之字形顺序打印二叉树的方法
所属栏目:[PHP教程] 日期:2021-04-01 热度:60
本篇章节讲解PHP实现按之字形顺序打印二叉树的方法。供大家参考研究具体如下: 问题 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。 解决[详细]
-
PHP获取二叉树镜像的方法
所属栏目:[PHP教程] 日期:2021-04-01 热度:143
本篇章节讲解PHP获取二叉树镜像的方法。供大家参考研究具体如下: 问题 操作给定的二叉树,将其变换为源二叉树的镜像。 解决思路 翻转二叉树,有递归和非递归两种方式,非递归就是使用队列。 实现代码 val = $val; }}*/function Mirror( $queue =[详细]
-
PHP获取链表中倒数第K个节点的方法
所属栏目:[PHP教程] 日期:2021-04-01 热度:154
本篇章节讲解PHP获取链表中倒数第K个节点的方法。供大家参考研究具体如下: 问题 输入一个链表,输出该链表中倒数第k个结点。 解决思路 注意这个题目是返回节点,而不是返回值。返回值的话可以用栈来存储。返回节点则不能这样做。 设置两个指针,[详细]
-
PHP实现从上往下打印二叉树的方法
所属栏目:[PHP教程] 日期:2021-04-01 热度:176
本篇章节讲解PHP实现从上往下打印二叉树的方法。供大家参考研究具体如下: 问题 从上往下打印出二叉树的每个节点,同层节点从左至右打[详细]
-
PHP实现找出链表中环的入口节点
所属栏目:[PHP教程] 日期:2021-04-01 热度:186
本篇章节讲解PHP实现找出链表中环的入口节点。供大家参考研究具体如下: 问题 一个链表中包含环,请找出该链表的环的入口结点。 解决思路 第一步,找环中相汇点。分别用p1,p2指向链表头部,p1每次走一步,p2每次走二步,直到p1==p2找到在环中的相[详细]
-
PHP实现可添加水印与生成缩略图的图片处理工具类
所属栏目:[PHP教程] 日期:2021-04-01 热度:191
本篇章节讲解PHP实现可添加水印与生成缩略图的图片处理工具类。分享给大家供大家参考,具体如下: ImageTool.class.php imagePath = $imagePath; $this->outputDir = $outputDir; $this->memoryImg = null; } /** * 显示内存中的图片 * @param $image */ p[详细]
-
详解PHP序列化和反序列化原理
所属栏目:[PHP教程] 日期:2021-04-01 热度:66
0.前言 对象的序列化和反序列化作用就不再赘述,php中序列化的结果是一个php自定义的字符串格式,有点类似json. 我们在任何语言中设计对象的序列化和反序列化都需要解决几个问题 把某个对象序列化之后,序列化的结果有自描述的功能(从序列化的结果中知道这个对[详细]
-
基于 Swoole 的微信扫码登录功能实现代码
所属栏目:[PHP教程] 日期:2021-04-01 热度:159
随着微信的普及,扫码登录方式越来越被现在的应用所使用。它因为不用去记住密码,只要有微信号即可方便快捷登录。微信的开放平台原生就有支持扫码登录的功能,不过大部分人还是在用公众平台,所以扫码登录只能自行实现。这里基于微信公众平台的带参数临时二[详细]
-
PHP7扩展开发之hello word实现方法详解
所属栏目:[PHP教程] 日期:2021-04-01 热度:132
本篇章节讲解PHP7扩展开发之hello word实现方法。供大家参考研究具体如下: 这里是以PHP7作为基础,讲解如何从零开始创建一个PHP扩展。本文主要讲解创建一个扩展的基本步骤都有哪些。示例中,我们将实现如下功能: 输出内容: 在扩展中实现一个say[详细]
-
PHP实现的防止跨站和xss攻击代码【来自阿里云】
所属栏目:[PHP教程] 日期:2021-03-31 热度:181
本篇章节讲解PHP实现的防止跨站和xss攻击代码。供大家参考研究具体如下: 文档说明: 1.将waf.php传到要包含的文件的目录 2.在页面中加入防护,有两种做法,根据情况二选一即可: a).在所需要防护的页面加入代码 就可以做到页面防注入、跨站 如果[详细]
-
php使用imagecopymerge()函数创建半透明水印
所属栏目:[PHP教程] 日期:2021-03-31 热度:179
使用创建半透明水印,供大家参考,具体内容如下 // 首先我们从 GD 手动创建水印图像 $stamp = imagecreatetruecolor(100,70); imagefilledrectangle($stamp,99,69,0x0000FF); imagefilledrectangle($stamp,9,90,60,0xFFFFFF); imagestring($stamp,5,20,'libG[详细]
-
php实现mysql连接池效果实现代码
所属栏目:[PHP教程] 日期:2021-03-31 热度:113
循环从mysql连接池中获取连接,不需要重复创建新的连接。 参考配置修改:可以参考下面的文章 防止访问量过大,把连接数占满了 /** @author xuleyan @title mysql类 */ class DbHelper{ //连接池 private $_pools = []; //连接池大小 const POOLSIZE = 5; con[详细]
-
PHP CURL与java http使用方法详解
所属栏目:[PHP教程] 日期:2021-03-31 热度:196
php curl 有时候我们的项目需要与第三方平台进行交互。举个例子。 现在有A、B两个平台。 甲方在最初一段时间由A实现了一部分关键业务(如用户信息等)。 然后基于一部分原因,现在有一些业务需要B来实现,且实现程序调用了一些敏感的接口只能在B方服务器上跑[详细]
-
PHP微信开发之微信录音临时转永久存储
所属栏目:[PHP教程] 日期:2021-03-31 热度:79
最近做开发的时候碰到了这个问题,甲方希望用户在微信端的录音能够一直有效。就是随时打开好友的分享就能听到好友的录音。可在微信官方开发手册上查到微信录音文件上传后只能在微信端保留3天时间,3天后就失效了。怎么办呢? 1、通过调用微信媒体资源下载接[详细]
-
PHP设计模式之注册树模式分析
所属栏目:[PHP教程] 日期:2021-03-31 热度:87
本篇章节讲解PHP注册树模式。供大家参考研究具体如下: 什么是注册树模式? 注册树模式当然也叫注册模式,注册器模式。之所以我在这里矫情一下它的名称,是因为我感觉注册树这个名称更容易让人理解。像前两篇一样,我们这 篇依旧是从名字入手。注[详细]
