PHP的runkit扩展如何使用

目录动态修改常量安装
查看超全局变量键方法相关操作
类方法相关操作
总结
动态修改常量define('A', 'TestA');runkit_constant_redefine('A', 'NewTestA');echo A; // NewT...

2021-10-05

详解PHP调用Go服务的正确方式

目录问题服务耦合服务抽取Unix Domain Sockets进程间通信简单介绍适用场景代码实现Go 实现的 Trie 树Go ServerPHP Client小结效率杂谈问题服务耦合我们在开发过程中可能会...

2021-10-05

php遍历对象的方法

目录对于php来说,foreach是非常方便好用的一个语法,几乎对于每一个PHPer它都是日常接触最多的请求之一。那么对象是否能通过foreach来遍历呢?答案是肯定的,但是有个条件,那就是对...

2021-10-05

PHP中垃圾回收相关函数的使用

目录再谈循环引用以及强制清理循环引用
开启、关闭及查看循环引用垃圾回收状态强制回收Zend引擎内存管理器使用的内存获取垃圾收集器的信息测试代码:相关文章之前我们已经学...

2021-10-05

PHP缓存系统APCu扩展的使用

目录APCu 扩展
方法说明
使用演示总结
想必大家都使用过 memcached 或者 redis 这类的缓存系统来做日常的缓存,或者用来抗流量,或者用来保存一些常用的热点数据,其实在小项目中...

2021-10-05

PHP Session ID的实现原理与实例

目录Session作用
session 的工作机制:PHPSESSIONID的生产算法原理:php.ini配置如下:PHP Session工作原理PHPcli模式通过session_id()使用sessionSession实例问题session安全问...

2021-10-05

如何用PHP实现分布算法之一致性哈希算法

目录传统算法缺陷算法思想算法实现总结传统算法缺陷对于服务器分布,我们要考虑的东西有如下三点:数据平均分布,查找定位准确,降低宕机影响。传统算法一般是将数据的键用算法映射...

2021-10-05

PHP如何获取命令行参数

目录$argv 获得所有空格分隔的参数列表
getopt() 从命令行参数列表中获取选项
长选项冒号规则
选项参数中断
总结
使用 PHP 开发的同学多少都会接触过 CLI 命令行。经常会有...

2021-10-05

如何在PHP中操作临时文件

目录获取 PHP 的默认临时创建文件目录
创建一个临时文件
根据目录状态创建一个唯一名称的临时文件
总结
获取 PHP 的默认临时创建文件目录
学习过 Linux 操作系统的都会知道...

2021-10-05

详解PHP7开启OPcache和Swoole性能的提升对比

目录前期准备不开启opcache和laravel开启OPcache使用swoole加速包总结前期准备测试所用的主机为虚拟机,虚拟机配置在双核4GB的个人电脑中。虚拟机系统为linux,http服务器采用n...

2021-10-05

PHP中使用DOMDocument来处理HTML、XML文档的示例

目录解析HTML生成一个XML总结
其实从PHP5开始,PHP就为我们提供了一个强大的解析和生成XML相关操作的类,也就是我们今天要讲的 DOMDocument 类。不过我估计大部分人在爬取网页...

2021-10-05

浅谈并发处理PHP进程间通信之外部介质

目录进程间通信文件flock代码实现mysqlselect for update代码实现redisincrSETNX代码实现优化总结进程间通信进程间通信,指至少两个进程或线程间传送数据或信号的一些技术或...

2021-10-05

PHP设计模式之迭代器模式的使用

目录Gof类图及解释
实例
一说到这个模式,就不得不提循环语句。在《大话设计模式》中,作者说道这个模式现在的学习意义更大于实际意义,这是为什么呢?当然就是被foreach这货给整得...

2021-10-05

PHP中include和require的使用详解

在PHP中,有两种包含外部文件的方式,分别是include和require。他们之间有什么不同呢?如果文件不存在或发生了错误,require产生E_COMPILE_ERROR级别的错误,程序停止运行。而include...

2021-10-05

如何使用Casbin作为ThinkPHP的权限控制中间件

目录概述安装中间件Casbin Model 配置验证概述PHP-Casbin是一个强大的、高效的开源访问控制框架,它支持基于各种访问控制模型的权限管理。Think-Casbin是一个专为 ThinkPHP5....

2021-10-05

浅谈如何提高PHP代码的质量

目录概述1 必备条件2 构建工具3 静态代码分析4 代码风格5 复制 / 粘贴检测器6 想要真正深入的代码分析?概述我们可以将此归咎于许多原因,但这肯定不仅仅是因为 PHP 生态系统缺...

2021-10-05

详解Swoole TCP流数据边界问题解决方案

目录1. 数据发送过程2. 什么是数据边界2.1 代码演示3.EOF 解决方案3.1 open_eof_check3.2 open_eof_split3.3 open_eof_check 和 open_eof_split 差异4. 固定包头 + 包体解...

2021-10-05

浅谈定义一个PHP函数

目录概述函数参数与它们的数据类型函数与它们的返回值可选参数 VS 可空参数概述<&#63;phpfunction divide($dividend, $divisor){ return $dividend / $divisor;}echo di...

2021-10-05

如何使用PHP依赖管理工具Composer

目录前言安装Composercomposer常用命令selfupdatedumpautoloadinstallupdaterequirecreate-projectphpStudy集成环境下 安装composer失败前言别再到处搜PHP类扩展包了,对于现...

2021-10-05

如何使用PHP对象POPO来优化你的代码

目录我们有如下的问题结论我们有如下的问题1.那么在另一种编程语言中 POJO 的名字是什么呢?关于普通旧对象的约定是 “普通旧编程语言对象”。如果你在 Ruby 上,你可以调用 PO...

2021-10-05

浅谈如何提高PHP代码质量之端到端集成测试

目录概述1、测试的结构2、上下文3、如何使用Behat&#160;总结概述在这里,我们可以使用为行为驱动开发构建的工具——官方 PHP 的 Cucumber 实现——Behat。我们可以通过运行以...

2021-10-05

详解Swoole跟传统的web开发的区别

目录一、swoole的运行模式1.1、传统web开发模式1.2、Swoole运行模式1.3、使用swoole和传统php开发的缺点二、注解机制三、容器3.1、什么是容器?3.2简单的通过代码理解依赖注...

2021-10-05

浅谈Swoole并发编程的魅力

目录场景介绍并发编程编码实现并发难题数据同步问题思维转变场景介绍假设我们要做一个石头剪刀布的Web游戏,3个玩家同时提交竞猜后显示胜者。在传统串行化Web编程中,我们一般...

2021-10-05

浅谈如何提高PHP代码质量之单元测试

目录1、单元测试2、应该使用哪个框架?3、如何设置测试?构建测试对象在模拟中匹配运行时参数匹配运行时异常4、在哪里可以找到更多的例子?1、单元测试通过实现单一责任原则(我们...

2021-10-05

详解PHP Swoole长连接常见问题

目录连接失效问题如何解决如何维持长连接结论连接失效问题例子其中,Redis常见的报错就是:配置项:timeout报错信息:Error while reading line from the serverRedis可以配置如果...

2021-10-05

如何用PHP导出PDF

目录准备工作简介TCPDF说明文档代码实现准备工作首先查询了相关的类库,有FPDF,zendPDF,TcPDF等等。首先看了下先选择了FPDF,可以说除了中文字符以外没有什么问题,中文乱码而且看...

2021-10-05

如何理解PHP程序执行的过程原理

目录概述加载php.ini配置加载php内置扩展概述Web环境我们假设为Apache。在编译PHP的时候,为了能够让Apache支持PHP,我们会生成一个mod_php5.so的模块。Apache加载这个模块,在u...

2021-10-05

详解PHP框架EasySwoole

目录安装运行编辑根目录下的composer.json 文件最后执行composer dumpautoload生命周期配置文件说明配置操作类添加用户配置项生产与开发配置分离动态配置服务管理脚本文件...

2021-10-05

如何让PHP的代码更安全

目录概述越权漏洞1. 水平越权2. 垂直越权3. 上下文越权JWT 的 Token 需要二次加密LFI (本地文件包含)XSSCSRF (跨站请求伪造)概述攻击者通过构造恶意SQL命令发送到数据库,如...

2021-10-05

如何从防护角度看Thinkphp历史漏洞

目录Thinkphp RCE漏洞和扫描流量漏洞原理回顾Thinkphp漏洞全网扫描总结Thinkphp RCE漏洞和扫描流量漏洞原理回顾5.0.x版本漏洞原理在于Thinkphp处理请求的关键类为Request(t...

2021-10-05

详解PHP的7个预定义接口

目录1. Traversable(遍历)接口2. Iterator(迭代器)接口3. IteratorAggregate(聚合迭代器) 接口4.ArrayAccess(数组式访问)接口5. Serializable (序列化)接口6. Closure 类7. Generator...

2021-10-05

分析五个Laravel Dusk的使用技巧

目录1. 填充隐藏字段2. 模拟 HTML 地理位置3. 使用 XPath 选择器4. 整页截屏5. 访问浏览器错误日志1. 填充隐藏字段在测试某些 JS 组件时 (例如自动完成,日期选择器等) ,可能...

2021-10-05

浅谈PHP性能优化之php.ini配置

目录内存文件上传会话缓冲输出真实路径缓存内存默认设置memory_limit = 128M单个进程可使用的内存最大值,这个值的设定可以从以下几点考虑: 应用的类型。如果是内存集中型...

2021-10-05

如何使用Laravel Eloquent来开发无限极分类

目录概述数据库迁移Eloquent 模型和关联关系路由和控制器方法视图和递归子视图概述我们会创建一个微型项目来展示儿童商店的分类,总共有 5 级,如下:数据库迁移简单的数据表结构...

2021-10-05

如何使用Zephir轻松构建PHP扩展

目录简介你该安装的第一个扩展ZephirZephir 安装结语简介比如,在 PHP 中需要与 SQLite3 交互,我们可以自己写方法与之进行连接,再写 SQL 语句请求数据。然而,这都是些既琐碎又重...

2021-10-05

详解php内存管理机制与垃圾回收机制

目录一、内存管理机制二、垃圾回收机制一、内存管理机制先看一段代码:<&#63;php//内存管理机制var_dump(memory_get_usage());//获取内存方法,加上true返回实际内存,不加则返回...

2021-10-05

详解php中流行的rpc框架

目录什么是RPC框架?远程调用原理远程调用的好处RPC与Socket有什么区别?RPC与REST有什么区别?php中流行的rpc框架有哪些phprpc安装开始使用yar下载安装开始使用什么是RPC框架?通...

2021-10-05

如何在Laravel中验证zip里的文件

目录概述PHP 的libzip扩展如何操作 ZIP 文件集成到 Laravel 程序中最佳实践概述如果我们希望用户上载 ZIP 文件,我们可以结合规则并像如下所示的内容使用:return [ 'file'...

2021-10-05

详解PHP的Sodium加密扩展函数

目录AEAD_AES_256_GCM 加解密
信息签名
Hash
总结
参考文档Sodium 扩展在 PHP7.2 后是跟随 PHP 源码一起发布的,只需要在编译的时候加上 --with-sodium 即可安装成功。如果是...

2021-10-05

详解Laravel制作API接口

需要注意的是:API有它的具体用途,我们应该清楚它是干啥的。访问API的时候应该输入什么。访问过API过后应该得到什么。在开始设计API时,我们应该注意这8点。后续的开发计划就围...

2021-10-05

PHP中针对区域语言标记信息的操作

相信大家对 zh_CN 这个东西绝对不会陌生,不管是 PHP 中,还是在我们的网页上,都会见到它的身影。其实这就是指定我们的显示编码是什么国家或者地区的,使用何种语言。对于这种区域...

2021-10-05

PHP如何初始化PDO及原始SQL语句操作

目录PDO 实例
dns 参数
PDO 对象属性
查询语句
普通查询及遍历查询结果集(数组、对象)
查询结果集(类)
查询结果集(指定字段)
增、删、改操作
增加操作修改操作删除操作总结
PDO...

2021-10-05

解析PHP中Exception异常机制

异常的基本使用当异常被抛出时,其后的代码不会继续执行,PHP 会尝试查找匹配的 "catch" 代码块。
如果异常没有被捕获,而且又没用使用 set_exception_handler() 作相应的处理的...

2021-10-05

Linux系统下安装PHP7.3版本

请先安装依赖包$&#160;yum install -y gcc gcc-c++&#160; make zlib zlib-devel pcre pcre-devel&#160; libjpeg libjpeg-devel libpng libpng-devel freetype freetype-dev...

2021-10-05

PHP局部异常因子算法-Local Outlier Factor(LOF)算法的具体实现解析

这两天在完善自己系统的过程中要实现一个查找异常的功能,于是在朋友的指点下学习并实现了异常点查找的一个基本算法“局部异常因子算法-Local Outlier Factor(LOF)算法”。首...

2021-10-05

PHP 实现数组分页

目录array_slice
array_chunk
LimitIterator
参数错误时的表现
总结
今天,我们就来学习一下可以实现这个能力的一些函数技巧。首先,我们还是准备好测试数据。$data = [ 'A'...

2021-10-05

PHP实现两种排课方式

两种排课方式:固定每周的固定时间上课(例:共上20节,每周六、周日早上8点-10点上课。假如今天周六凌晨1点,那么排课也需要从今天开始)总共上几个周,每周上课时间比较个性化(例:共上三...

2021-10-05

php 使用预处理语句操作数据库

目录什么是预处理语句?
PDO 操作预处理语句
mysqli 操作预处理语句
总结
什么是预处理语句?
预处理语句,可以把它看作是想要运行的 SQL 语句的一种编译过的模板,它可以使用变量...

2021-10-05

php使用workman框架实现socket服务以及连接客户端

1. 解决什么问题,为什么要用workman socket服务 都知道游戏安装包很大,渠道推广时,需要对游戏进行分包处理,而PHP命令模式是单进程,一次只能分一次包,故这里用workman实现socke...

2021-10-05

laravel结合vue添加权限的实现示例

目录一、添加(权限)节点1.1、引入vue1.2、添加模版(vue、jquery)1.3、添加节点控制器逻辑1.4、模型中定义修改器1.5、效果:一、添加(权限)节点1.1、引入vue使用vue进行界面管理,实现...

2021-10-05
返回顶部
顶部