PHP 8.3 功能预览: gc_status() 返回额外的 GC 信息
PHP 的 gc_status() 函数返回垃圾回收器(GC)的统计信息,比如 GC 是否在运行、GC 是否被保护以及 缓冲区(buffer)的大小。这些信息可用在调试长运行时长的 PHP 应用,检测并优化内存使用。var_dump(gc_status());当前,gc_status 返回有4个key的数组:FieldTypeDescriptionrunsI...
Apache 的性能瓶颈与 Nginx 的性能优势
每一名后端开发可能都知道 Nginx 比 Apache 性能强,但是为什么强,强在哪里,接下来我们动手实验解答这个问题。Nginx 利用了新的 Linux kernel APINginx 利用了 Linux 内核引入的 epoll 事件驱动 API,大幅降低了海量 TCP 连接下的 CPU 负载,提升了单个系统的 TCP 响应容量,这是 Nginx 性能更好...
Phalcon 概述
Phalcon 是什么Phalcon 是开源、全功能栈、使用 C 扩展编写、针对高性能优化的 PHP 5 框架。 开发者不需要学习和使用 C 语言的功能,因为所有的功能都以 PHP 类的方式暴露出来,可以直接使用。Phalcon 也是松耦合的,可以根据项目的需要任意使用其他对象。与其他框架相比,Phalcon提供了一些独特的功能(传统的)或现有的PHP。以下...
Magento 的基本架构解析
Magento 是一个用 PHP 编写的开源电子商务平台。Magento 设计得非常灵活,具有模块化架构体系和丰富的功能。易于与第三方应用系统无缝集成。其面向跨境电商企业级应用,可处理各方面的需求,以及建设一个多种用途和适用面的电子商务网站。
使用 DTO 保持 Context 上下文
DTO(数据转换对象Data Transfer Objects)可用于多个方面。PHP 8 发布后,创建这样的类变得十分容易。从逃避数组的基本构造到为过去只是普通的旧数组添加类型安全。在 PHP 8 之前,这些也都是可能的;不过它花费了更多的样板代码,而且从未觉得有价值。随着 PHP 8.2出现,我们的选择在 PHP 生态系统中越来越开放...
PHP 8.3 新特性: 动态访问类常量及 Enum 成员
PHP 8.3 以后支持使用变量名访问类常数以及Enum 对象。class MyClass { public const MY_CONST = 42; } $constName = 'MY_CONST'; echo MyClass::{$constName};PHP 8.3 之前,ClassName::{$varName} 语法获取类常量是不允许...
PHP 8.3 功能: json_validate 函数
PHP 8.3 添加了一个名为 json_validate 的新函数,用来返回true或false以判断给定的字符串是否是有效的JSON字符串。PHP 8.3 之前,判断给定字符串是不是有效的 JSON 字符串的唯一方法是,尝试解码该字符串,看看是否会产生错误。新的 json_validate 函数底层使用了同一个 JSON 解析器,不过内存使用量更少且像j...
如何延长老版PHP应用的生命周期
PHP 正在稳步发展。每年都会有一个主要的新版本,其中包含新功能、性能改进、相当多的弃用,甚至语法更改。PHP核心开发人员维护两个最新的PHP版本,其中包括活动的bug修复和安全修复,然后是安全修复。这实际上意味着每个主要的PHP版本最多支持三年,现有的PHP应用就要被迫升级。虽然更新现有的PHP应用是理想和推荐的方法,但不可避免的是,有些应用程序/网...