-
PHP中类静态调用和范围解析操作符的区别解析
所属栏目:[PHP教程] 日期:2021-04-01 热度:70
具体代码如下所示: who(); // 输出 'child' static::who(); // 延迟静态绑定 是范围解析,不是静态调用 } function who() { echo 'parent '; }}class ChildClass extends ParentClass { public static $my_static = 'child var '; function who() { echo 'c[详细]
-
PHP实现找出链表中环的入口节点
所属栏目:[PHP教程] 日期:2021-04-01 热度:125
本篇章节讲解PHP实现找出链表中环的入口节点。供大家参考研究具体如下: 问题 一个链表中包含环,请找出该链表的环的入口结点。 解决思路 第一步,找环中相汇点。分别用p1,p2指向链表头部,p1每次走一步,p2每次走二步,直到p1==p2找到在环中的相[详细]
-
PHP实现可添加水印与生成缩略图的图片处理工具类
所属栏目:[PHP教程] 日期:2021-04-01 热度:150
本篇章节讲解PHP实现可添加水印与生成缩略图的图片处理工具类。分享给大家供大家参考,具体如下: ImageTool.class.php imagePath = $imagePath; $this->outputDir = $outputDir; $this->memoryImg = null; } /** * 显示内存中的图片 * @param $image */ p[详细]
-
详解PHP序列化和反序列化原理
所属栏目:[PHP教程] 日期:2021-04-01 热度:155
0.前言 对象的序列化和反序列化作用就不再赘述,php中序列化的结果是一个php自定义的字符串格式,有点类似json. 我们在任何语言中设计对象的序列化和反序列化都需要解决几个问题 把某个对象序列化之后,序列化的结果有自描述的功能(从序列化的结果中知道这个对[详细]
-
基于 Swoole 的微信扫码登录功能实现代码
所属栏目:[PHP教程] 日期:2021-04-01 热度:100
随着微信的普及,扫码登录方式越来越被现在的应用所使用。它因为不用去记住密码,只要有微信号即可方便快捷登录。微信的开放平台原生就有支持扫码登录的功能,不过大部分人还是在用公众平台,所以扫码登录只能自行实现。这里基于微信公众平台的带参数临时二[详细]
-
PHP7扩展开发之hello word实现方法详解
所属栏目:[PHP教程] 日期:2021-04-01 热度:180
本篇章节讲解PHP7扩展开发之hello word实现方法。供大家参考研究具体如下: 这里是以PHP7作为基础,讲解如何从零开始创建一个PHP扩展。本文主要讲解创建一个扩展的基本步骤都有哪些。示例中,我们将实现如下功能: 输出内容: 在扩展中实现一个say[详细]
-
PHP利用一行代码删除目录下所有文件方法示例
所属栏目:[PHP教程] 日期:2021-04-01 热度:59
前言 想必很多人都会写几行甚至几十行代码使其列出所有文件变为数组进行删除,但是glob函数分分钟解决问题!下面来一起看看详细的介绍吧。 glob语法说明: glob() 函数依照 libc glob() 函数使用的规则寻找所有与 pattern 匹配的文件路径,类似于一般 shells[详细]
-
PHP实现判断二叉树是否对称的方法
所属栏目:[PHP教程] 日期:2021-04-01 热度:61
本篇章节讲解PHP实现判断二叉树是否对称的方法。供大家参考研究具体如下: 问题 请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。 题解 递归判断二叉树两侧。 实现代码: val =[详细]
-
PHP调用ffmpeg对视频截图并拼接脚本
所属栏目:[PHP教程] 日期:2021-04-01 热度:191
PHP脚本调用ffmpeg对视频截图并拼接,供大家参考,具体内容如下 目前支持MKV,MPG,MP4等常见格式的视频,其他格式有待测试 12P 一张截图平均生成时间 1.64s 100个视频,大概需要2分半左右 9P 一张截图平均生成时间 1.13s 100个视频,大概需要2分钟左右 6P 一[详细]
-
PHP实现统计一个数字在排序数组中出现次数的方法
所属栏目:[PHP教程] 日期:2021-04-01 热度:181
本篇章节讲解PHP实现统计一个数字在排序数组中出现次数的方法。分享给大家供大家参考,具体如下: 题目 统计一个数字在排序数组中出现的次数。 题解 既然是排序数组,使用二分查找是效率最高的。找到之后再向两侧拓展一下。 代码 >1; if($data[$middle]==$[详细]
-
PHP各版本中函数的类型声明详解
所属栏目:[PHP教程] 日期:2021-04-01 热度:188
PHP7开始支持标量类型声明,强类型语言的味道比较浓。使用这个特性的过程中踩过两次坑:一次是声明boolean,最近是声明double。为避免以后继续犯类似错误,就把官方文档翻了一次。本文是看完后对PHP函数的类型声明使用做的一次总结。 从语法上,PHP的函数定[详细]
-
PHP使用两个栈实现队列功能的方法
所属栏目:[PHP教程] 日期:2021-04-01 热度:180
本篇章节讲解PHP使用两个栈实现队列功能的方法。供大家参考研究具体如下: 问题 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 解决思路 两个栈。出栈的时候,如果栈2不为空,就出栈2。如果栈2为空,就把栈1的出栈[详细]
-
PHP基于非递归算法实现先序、中序及后序遍历二叉树操作示例
所属栏目:[PHP教程] 日期:2021-04-01 热度:194
本篇章节讲解PHP基于非递归算法实现先序、中序及后序遍历二叉树操作。供大家参考研究具体如下: 概述: 二叉树遍历原理如下: 针对上图所示二叉树遍历: ABDHECFG HDBEAFCG HDEBFGCA 实现方法: 先序遍历: 利用栈先进后出的特性,先访问根节点,[详细]
-
MixPHP、Yii和CodeIgniter的并发压力测试小结
所属栏目:[PHP教程] 日期:2021-04-01 热度:55
前言 MixPHP 是一个基于 Swoole 的高性能框架,CodeIgniter 是一个元老级的轻量级框架,Yii 是一个非常流行的框架,以下是三个框架的对比。 由于Yii/CodeIgniter 是基于 Apache/PHP-FPM 的传统框架,如果使用 MixPHP 的正常 Swoole 部署方式来对比,显得有些[详细]
-
Yii2中的场景(scenario)和验证规则(rule)详解
所属栏目:[PHP教程] 日期:2021-04-01 热度:140
前言 场景,顾名思义,就是一个情景,一种场面。在yii2中也有场景,这个场景跟你所理解的场景含义差不多。 和用户有交互的系统必不可少的功能包括收集用户数据、校验和处理。实际业务中,往往还需要将数据进行持久化存储。出于安全考虑,开发人员应当牢牢把[详细]
-
PHP7扩展开发之基于函数方式使用lib库的方法详解
所属栏目:[PHP教程] 日期:2021-04-01 热度:177
本篇章节讲解PHP7扩展开发之基于函数方式使用lib库的方法。供大家参考研究具体如下: 前言 首先说下什么是lib库。lib库就是一个提供特定功能的一个文件。可以把它看成是PHP的一个文件,这个文件提供一些函数方法。只是这个lib库是用c或者c++写的。[详细]
-
PHP注释语法规范与命名规范详解篇
所属栏目:[PHP教程] 日期:2021-03-31 热度:183
HP注释规范 注释在写代码的过程中非常重要,好的注释能让你的代码读起来更轻松,在写代码的时候一定要注意注释的规范。 “php是一门及其容易入门的语言,刚入门的新手不到几分钟的时间可能就会用echo打印出一个hello world !但是他是真正的程序员吗?怎么来[详细]
-
php语言注释,单行注释和多行注释
所属栏目:[PHP教程] 日期:2021-03-31 热度:101
PHP语言注释分为单行注释和多行注释。 1. PHP单行注释: PHP注释符号: // PHP单行注释示例: 2. PHP多行注释 PHP多行注释符号: /* */ PHP多行注释示例: 基本上就这样了,很基础的,就是容易忘。[详细]
-
phpstorm 正则匹配删除空行、注释行(替换注释行为空行)
所属栏目:[PHP教程] 日期:2021-03-31 热度:129
使用phpstorm 来编写php 和javascript 代码,感觉还是不错的,用得也很舒服。 遇到了一个需求,有时候在阅读框架源代码的时候 , 想过滤(删除)掉源代码中的注释行,如果手动逐行删除显示不够科学。 当然想到了强大的正则匹配(regExp regular expression)[详细]
-
php数据结构之顺序链表与链式线性表示例
所属栏目:[PHP教程] 日期:2021-03-31 热度:151
本篇章节讲解php数据结构之顺序链表与链式线性表。供大家参考研究具体如下: 链表操作 1、 InitList(L):初始化链表2、 DestroyList(L):删除连接3、 ClearList(L):清空链表4、 ListEmpty(L):判断是否为空5、 ListLength(L):链表长度6、 getEle[详细]
-
PHP Class SoapClient not found解决方法
所属栏目:[PHP教程] 日期:2021-03-31 热度:146
要用到 SoapClient,new 了一个提示 Class ‘SoapClient' not found,检查了下 phpinfo,原因是当初没有编译这个扩展,只好现在再加上了。 php在调用webservice时,报告如下类似错误: ( ! ) Fatal error: Class 'SoapClient' not found in E:/WebSrv/CI/system/[详细]
-
PHP实现按之字形顺序打印二叉树的方法
所属栏目:[PHP教程] 日期:2021-03-31 热度:150
本篇章节讲解PHP实现按之字形顺序打印二叉树的方法。供大家参考研究具体如下: 问题 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。 解决[详细]
-
PHP获取二叉树镜像的方法
所属栏目:[PHP教程] 日期:2021-03-31 热度:62
本篇章节讲解PHP获取二叉树镜像的方法。供大家参考研究具体如下: 问题 操作给定的二叉树,将其变换为源二叉树的镜像。 解决思路 翻转二叉树,有递归和非递归两种方式,非递归就是使用队列。 实现代码 val = $val; }}*/function Mirror( $queue =[详细]
-
PHP获取链表中倒数第K个节点的方法
所属栏目:[PHP教程] 日期:2021-03-31 热度:141
本篇章节讲解PHP获取链表中倒数第K个节点的方法。供大家参考研究具体如下: 问题 输入一个链表,输出该链表中倒数第k个结点。 解决思路 注意这个题目是返回节点,而不是返回值。返回值的话可以用栈来存储。返回节点则不能这样做。 设置两个指针,[详细]
-
PHP实现从上往下打印二叉树的方法
所属栏目:[PHP教程] 日期:2021-03-31 热度:100
本篇章节讲解PHP实现从上往下打印二叉树的方法。供大家参考研究具体如下: 问题 从上往下打印出二叉树的每个节点,同层节点从左至右打[详细]