文章分类: 编程
编程

PHP 8.5:扩展 #[\Override] 使之适用于属性

23 2025-12-16 16:01:00

这是之前 RFC 的后续,该 RFC 引入了 #[\Override] 注解,用于显式地表达方法要覆盖父方法或实现接口。在继承过程中,PHP 会检查该方法是否实际存在于父级继承结构中或已实现的接口中。原始 RFC 明确排除:目前,属性不能是接口的一部分,因此只有父类的属性才能被重写。属性的类型被强制保持不变,并且属性本身不包含行为。一个属性只能被一个兼容的属...

详情...
编程

PHP 8.6 版本将引入偏函数应用程序 (Partial Function Application)。

39 2025-12-15 03:40:00

PHP 8.6 中的偏函数应用 (Partial Function Application) 允许你通过调用一个带有部分参数的函数并使用占位符来表示其余参数,从而编写一个“预配置”的可调用对象。PHP 不会直接执行该函数,而是返回一个闭包,其参数列表会根据缺失的部分自动生成。占位符包括:? 表示“此处只有一个参数”… 表示“传递所有剩余参数”以下是一个基本示...

详情...
编程

Spring Boot 4 和 Spring Framework 7 – 新增功能

193 2025-12-11 03:13:00

2022 年末,Spring Boot 3 和 Spring Framework 6 的发布,为 Spring 生态系统带来了自诞生以来最重大的变革。它们引入了 Java 17 基线、从 javax.* 到 jakarta.* 的迁移,以及对 GraalVM 原生镜像的早期支持。如今,在 2025 年,下一代 Spring Boot 4 和 Spr...

详情...
编程

PHP 8.5: #[\Deprecated] 可用于 trait

70 2025-12-10 14:14:00

#[\Deprecated] 注解是 PHP 8.4 中引入的,可用于调用函数(或类方法)或者访问类常量(或者枚举 case)时发出弃用警告。从 8.5 开始,弃用警告也可以用在访问全局常量时发出。而本文将介绍该注解在 PHP 8.5 中引入的另一个新特性:支持 trait 的弃用警告。<?php #[\Deprecated] trait D...

详情...
编程

TIOBE 编程语言排行榜:2025 年 12 月|R 语言重返前十

357 2025-12-09 00:10:00

R 语言以完美贴合统计学家和数据科学家的需求而闻名。随着统计学和大规模数据可视化日益重要,R 语言重获了人气。这一趋势同样体现在Wolfram/Mathematica(另一款具备类似功能的工具)的崛起上,本月该工具已重返榜单前 50 名。R 语言因其非传统的语法和在大型生产系统中的有限可扩展性,常受到“传统”软件工程师的诟病。但对于领域专家而言,它仍是一门强...

详情...
编程

为什么要在 PHP 中使用自定义异常

99 2025-12-08 15:08:00

在使用 PHP 创建应用时,Exception 在处理应用生命周期中出现的错误和异常方面起着至关重要的作用。它们是代码中可能出现的异常情况或条件,因为输入数据错误甚至意外的网络问题等不同情况。Exception 是一种标准的信号方式,表示发生了当前代码无法处理的意外或异常情况。Exception 的强大功能在于在发生这些意外情况时管理应用程序流的能力...

详情...
编程

深入 Laravel 服务容器

149 2025-12-02 17:18:00

Laravel 的服务容器是一个安静的引擎,它将你的应用连接在一起。它处理依赖注入、自动连接以及使大型应用感觉简单的小决策。在本文中,我们将揭开它如何解析类的神秘面纱,如何以正确的方式注册绑定,如何根据上下文选择不同的实现,以及如何自信地测试和调试应用。容器的核心是将“我需要 X”映射为“如何构建 X”。就是这样。一旦你得到了这个心理模型,其他一切都会到...

详情...
编程

PHP 中动态方法调用的风险

132 2025-12-02 03:57:00

在你的 PHP 应用中,有时可能会看到使用动态方法调用。这通常是指在运行时构造方法名称,然后在对象上调用。例如,$this->{'methodName'}() 可用于调用名为 methodName 的方法。动态方法调用很有用,但也存在一些应该注意的风险。本文中,我们将探讨在 PHP 中使用动态方法调用的风险,并提供一些可供考虑的替代方案。什么是动态...

详情...
编程

管理 Laravel 中的信用系统

162 2025-11-30 17:08:00

Laravel 的 Credits 包是一个基于账本的 Laravel 扩展包,用于管理应用中的信用系统。适用于虚拟货币、奖励积分或任何基于信用的特性:use Climactic\Credits\Traits\HasCredits; class User extends Model { use HasCredits; } // Basic u...

详情...
编程

PHP 8.5:新增 PHP_BUILD_PROVIDER 常量

204 2025-11-25 16:38:00

PHP 8.5 引入了一个新的全局 PHP 常量 PHP_BUILD_PROVIDER,它包含构建时设置的 PHP_BUILD_PROVIDER 环境变量。该环境变量的内容是任意的,但其目的是在 PHP 构建步骤中使用,以添加一些关于构建提供程序的上下文信息。如果在构建时未设置 `PHP_BUILD_PROVIDER` 环境变量,则不会声明 PHP_BUIL...

详情...