分类: PHP

56 篇文章

PHP8.5新特性
PHP版本 root@php-test:~# php -v PHP 8.5.0RC3 (cli) (built: Oct 27 2025 21:11:25) (NTS) Copyright (c) The PHP Group Built by Debian Zend Engine v4.5.0RC3…
Laravel12新特性体验
事务事件捕获 你大概已经习惯用 DB::transaction() 来保证数据一致性,对吧?Laravel 现在在事务工具箱里塞进了一个新帮手 afterRollback()。它会在事务失败时自动触发,让你不需要额外写 try-catch 就能处理清理、记录日志或发送通知等动作。 use Illum…
PHP8.4新特性
属性挂钩 (Property Hooks) 传统方式需要为 fullName这类计算属性编写独立的 getter 和 setter 方法。现在,逻辑可以直接内嵌在属性定义中。 // PHP 8.4 之前 class UserOld { public function __construct(priv…
laravel11 Concurrency并发器
有时您可能需要执行几个相互独立的慢任务。在许多情况下,通过并发执行任务可以实现显著的性能提升。Laravel 的 Concurrency 门面提供了一个简单、方便的 API,用于并发执行闭包。 工作原理 Laravel 通过序列化给定的闭包并将其分派到一个隐藏的 Artisan CLI 命令来实现并…
Carbon 2 与 Carbon 3 之 Laravel 10 升级 11 的坑
起因 laravel 10 的安全修复截止至 2025日2月4日,需要升级到 11 版本。 Laravel 11 常用的时间处理包进行了依赖升级,Carbon 2和3都支持,但是如果不在 compsoer.json 中指定依赖版本会默认依赖 Carbon 3 ,Carbon 2 和 3 做了极大的功…
Ubuntu多版本PHP
add-apt-repository ppa:ondrej/php # 安装PHP apt-get install php8.1-fpm apt-get install php8.2-fpm apt-get install php8.3-fpm # composer php8.2 /usr/loca…
PHP8.3新特性
类型化类常量 8.2 <?php interface I { // We may naively assume that the PHP constant is always a string. const PHP = 'PHP 8.2'; } class Foo impl…
laravel中的两种锁
/** * Lock the selected rows in the table for updating. * 悲观锁 锁住后读改阻塞 * @return $this */ public function lockForUpdate() { return $this->lock(true)…
PHP8.2新特性
trait 常量 在PHP 8.2之前,不允许将常量添加到trait中。这是一种语言差异,因为trait可以访问使用它们的类的常量。 但是你不能严格地定义一个常量存在于一个类中,次问题已经在PHP 8.2修复。 <?php trait testTrait { private const NAM…
PHP8.1新特性
枚举(Enumerations) PHP 8.1使用enum枚举类型来取代一组常量,并获得开箱即用的验证。 <?php enum UserRole: string { case ADMIN = "1"; case GUEST = "2"; case WR…