-
基于PHP7错误处理与异常处理方法(详解)
所属栏目:[PHP教程] 日期:2021-04-01 热度:90
PHP7错误处理 PHP 7 改变了大多数错误的报告方式。不同于传统(PHP 5)的错误报告机制,现在大多数错误被作为 Error 异常抛出。 这种 Error 异常可以像 Exception 异常一样被第一个匹配的 try / catch 块所捕获。如果没有匹配的 catch 块,则调用异常处理函[详细]
-
PHP学习之预定义变量(实例讲解)
所属栏目:[PHP教程] 日期:2021-04-01 热度:195
超全局变量 超全局变量–超全局变量是全部作用域中始终可用的内置变量 $GLOBALS 以上例程的输出类似于:$foo in global scope: Example content$foo in current scope: local variable $_SERVER ";var_dump($_SERVER);output:array (size=35) 'HTTP_HOST[详细]
-
PHP7扩展开发之基于函数方式使用lib库的方法详解
所属栏目:[PHP教程] 日期:2021-04-01 热度:53
本篇章节讲解PHP7扩展开发之基于函数方式使用lib库的方法。供大家参考研究具体如下: 前言 首先说下什么是lib库。lib库就是一个提供特定功能的一个文件。可以把它看成是PHP的一个文件,这个文件提供一些函数方法。只是这个lib库是用c或者c++写的。[详细]
-
Yii2中的场景(scenario)和验证规则(rule)详解
所属栏目:[PHP教程] 日期:2021-04-01 热度:169
前言 场景,顾名思义,就是一个情景,一种场面。在yii2中也有场景,这个场景跟你所理解的场景含义差不多。 和用户有交互的系统必不可少的功能包括收集用户数据、校验和处理。实际业务中,往往还需要将数据进行持久化存储。出于安全考虑,开发人员应当牢牢把[详细]
-
MixPHP、Yii和CodeIgniter的并发压力测试小结
所属栏目:[PHP教程] 日期:2021-04-01 热度:147
前言 MixPHP 是一个基于 Swoole 的高性能框架,CodeIgniter 是一个元老级的轻量级框架,Yii 是一个非常流行的框架,以下是三个框架的对比。 由于Yii/CodeIgniter 是基于 Apache/PHP-FPM 的传统框架,如果使用 MixPHP 的正常 Swoole 部署方式来对比,显得有些[详细]
-
PHP基于非递归算法实现先序、中序及后序遍历二叉树操作示例
所属栏目:[PHP教程] 日期:2021-04-01 热度:65
本篇章节讲解PHP基于非递归算法实现先序、中序及后序遍历二叉树操作。供大家参考研究具体如下: 概述: 二叉树遍历原理如下: 针对上图所示二叉树遍历: ABDHECFG HDBEAFCG HDEBFGCA 实现方法: 先序遍历: 利用栈先进后出的特性,先访问根节点,[详细]
-
PHP使用两个栈实现队列功能的方法
所属栏目:[PHP教程] 日期:2021-04-01 热度:105
本篇章节讲解PHP使用两个栈实现队列功能的方法。供大家参考研究具体如下: 问题 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 解决思路 两个栈。出栈的时候,如果栈2不为空,就出栈2。如果栈2为空,就把栈1的出栈[详细]
-
PHP各版本中函数的类型声明详解
所属栏目:[PHP教程] 日期:2021-04-01 热度:175
PHP7开始支持标量类型声明,强类型语言的味道比较浓。使用这个特性的过程中踩过两次坑:一次是声明boolean,最近是声明double。为避免以后继续犯类似错误,就把官方文档翻了一次。本文是看完后对PHP函数的类型声明使用做的一次总结。 从语法上,PHP的函数定[详细]
-
PHP实现统计一个数字在排序数组中出现次数的方法
所属栏目:[PHP教程] 日期:2021-04-01 热度:200
本篇章节讲解PHP实现统计一个数字在排序数组中出现次数的方法。分享给大家供大家参考,具体如下: 题目 统计一个数字在排序数组中出现的次数。 题解 既然是排序数组,使用二分查找是效率最高的。找到之后再向两侧拓展一下。 代码 >1; if($data[$middle]==$[详细]
-
PHP调用ffmpeg对视频截图并拼接脚本
所属栏目:[PHP教程] 日期:2021-04-01 热度:99
PHP脚本调用ffmpeg对视频截图并拼接,供大家参考,具体内容如下 目前支持MKV,MPG,MP4等常见格式的视频,其他格式有待测试 12P 一张截图平均生成时间 1.64s 100个视频,大概需要2分半左右 9P 一张截图平均生成时间 1.13s 100个视频,大概需要2分钟左右 6P 一[详细]
-
PHP实现判断二叉树是否对称的方法
所属栏目:[PHP教程] 日期:2021-04-01 热度:182
本篇章节讲解PHP实现判断二叉树是否对称的方法。供大家参考研究具体如下: 问题 请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。 题解 递归判断二叉树两侧。 实现代码: val =[详细]
-
PHP利用一行代码删除目录下所有文件方法示例
所属栏目:[PHP教程] 日期:2021-04-01 热度:189
前言 想必很多人都会写几行甚至几十行代码使其列出所有文件变为数组进行删除,但是glob函数分分钟解决问题!下面来一起看看详细的介绍吧。 glob语法说明: glob() 函数依照 libc glob() 函数使用的规则寻找所有与 pattern 匹配的文件路径,类似于一般 shells[详细]
-
php实现斐波那契数列代码分享
所属栏目:[PHP教程] 日期:2021-03-31 热度:109
斐波那契数列指的是这样一个数列 1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368........ 这个数列从第3项开始,每一项都等于前两项之和。 F0=0,F1=1,Fn=F(n-1)+F(n-2) 递归版和非递归版。 作为[详细]
-
PHP基于二分法实现数组查找功能示例【循环与递归算法】
所属栏目:[PHP教程] 日期:2021-03-31 热度:108
本篇章节讲解PHP基于二分法实现数组查找功能。分享给大家供大家参考,具体如下: 二分法。分别使用while循环的方法和递归调用的方法。 $high) {// 先判断结束条件 return -1; } $i = intval(($high + $low)/2); if ($arr[$i] > $v){ return bsearch_r($v,$[详细]
-
PHP实现的简单四则运算计算器功能示例
所属栏目:[PHP教程] 日期:2021-03-31 热度:176
本篇章节讲解PHP实现的简单四则运算计算器功能。供大家参考研究具体如下: php实现一个简单的四则运算计算器(还不支持括号的优先级)。利用栈这种数据结构来计算表达式很赞。 这里可以使用栈的结构,由于php的数组“天然”就有栈的特性,这里直接[详细]
-
php实现希尔排序算法的方法分析
所属栏目:[PHP教程] 日期:2021-03-31 热度:93
本篇章节讲解php实现希尔排序算法的方法。供大家参考研究具体如下: 虽然现在各种程序语言都有其各自强大的排序库函数,但是这些底层实现也都是利用这些基础或高级的排序算法。 理解这些复杂的排序算法还是很有意思的,体会这些排序算法的精妙~ 希[详细]
-
PHP使用自定义key实现对数据加密解密的方法
所属栏目:[PHP教程] 日期:2021-03-31 热度:131
本篇章节讲解PHP使用自定义key实现对数据加密解密的方法。供大家参考研究具体如下: 客户端和服务端通信时,有个场景很常见,通过一个id作为url参数来回传递。假设现在业务上只有这个id标识,那么需要稍微安全一点的通信,对这个id进行加密传输,[详细]
-
PHP服务端环境搭建的图文教程(分享)
所属栏目:[PHP教程] 日期:2021-03-31 热度:76
一、PHP服务端环境搭建 1.php 服务端环境 安装套件 解释器 ) F:MyDoc文件(重要)DL_学习download重要资源apache服务器组件 安装 测试本地Apache服务器是否开启:浏览器中输入 127.0.0.1 4.修改浏览器中默认出现的dashboard文件夹 打开xmapp下htdocs文件夹[详细]
-
PHP中你可能忽略的性能优化利器:生成器
所属栏目:[PHP教程] 日期:2021-03-31 热度:175
前言 如果是做Python或者其他语言的小伙伴,对于生成器应该不陌生。但很多PHP开发者或许都不知道生成器这个功能,可能是因为生成器是PHP 5.5.0才引入的功能,也可以是生成器作用不是很明显。但是,生成器功能的确非常有用。 什么情况之下,会遇到PHP性能问题[详细]
-
PHP实现约瑟夫环问题的方法分析
所属栏目:[PHP教程] 日期:2021-03-31 热度:75
本篇章节讲解PHP实现约瑟夫环问题的方法。供大家参考研究具体如下: 一、概述 先来看看网上比较常见的约瑟夫环问题描述:约瑟夫环(约瑟夫问题)是一个数学的应用问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人[详细]
-
浅析PHP开发规范
所属栏目:[PHP教程] 日期:2021-03-31 热度:106
基本约定 源文件 代码使用 文件格式必须是无BOM UTF-8格式 一个文件只声明一种类型,如class和interface不能混写在一个源文件中 缩进 使用4个空格来缩进,IDE可以设置 行长度 每行120个字符 关键字 所有关键字均为小写,如true、false 命名 类名为大驼峰法,[详细]
-
PHP删除数组中指定下标的元素方法
所属栏目:[PHP教程] 日期:2021-03-31 热度:177
1、前面有讲数组作为堆栈和队列时的删除元素操作,即按顺序有规律的进行删除。那么,如果需要从数组的中间位置删除某个元素该如何操作呢?就需要我们今天要讲的unset()函数了。 2、unset()函数允许取消一个数组中的元素,但数组并不会重建索引,即保持原有索[详细]
-
PHP实现合并两个有序数组的方法分析
所属栏目:[PHP教程] 日期:2021-03-30 热度:176
本篇章节讲解PHP实现合并两个有序数组的方法。供大家参考研究具体如下: $arr2[$i2]){//需要比较数组1和数组2,小的放入目标数组,并且标记+1 $arr[] = $arr2[$i2]; $i2++; }else{ $arr[] = $arr1[$i1]; $i1++; } }elseif($i1 = $arr2Num){//数组2[详细]
-
PHP实现单链表翻转操作示例
所属栏目:[PHP教程] 日期:2021-03-30 热度:93
本篇章节讲解PHP实现单链表翻转操作。分享给大家供大家参考,具体如下: 当一个序列中只含有指向它的后继结点的链接时,就称该链表为单链表。 这里给出了一个单链表的定义及翻转操作方法: value = $value; } public function getValue(){ return $this->v[详细]
-
PHP实现机器学习之朴素贝叶斯算法详解
所属栏目:[PHP教程] 日期:2021-03-30 热度:51
本篇章节讲解PHP实现机器学习之朴素贝叶斯算法。供大家参考研究具体如下: 机器学习已经在我们的生活中变得随处可见了。比如从你在家的时候温控器开始工作到智能汽车以及我们口袋中的智能手机。机器学习看上去已经无处不在并且是一个非常值得探索[详细]
