标签: PHP
编程

PHP 中的单引号 vs. 双引号

911 2024-11-12 02:24:00

最近,我又听说 PHP 社区中有人仍然在谈论单引号和双引号,他们说使用单引号只是一种微优化,但如果你习惯了一直使用单引号,你会节省大量的 CPU 周期!为什么会这样呢?PHP 实现了字符串插值,在其中它搜索字符串中变量的使用情况,并将其替换为所用变量的值:$juice = "apple"; echo "They drank some $juice juice...

详情...
编程

PHP 8.4: 弃用使用两个以上参数调用 session_set_save_handler()

1043 2024-11-03 04:19:00

Session 扩展中的 session_set_save_handler 函数设置了一系列用户级会话存储函数,以覆盖内置的基于文件的存储机制。当应用需要将用户会话存储在数据库、内存中,或在自动化测试期间覆盖会话存储机制时,这很有用。session_set_save_handler 函数支持两个重载签名,这仅适用于原生内置的 PHP 函数,并且只有少数 PH...

详情...
编程

PHP 8.4: 新增 grapheme_str_split 函数

905 2024-11-01 18:00:00

PHP 8.4 中的 Intl 扩展添加了一个名为 grapheme_str_split 的新函数,该函数将给定的字符串拆分为一个字素数组。字素是语言系统中有意义和功能的最小单位。相比之下,来自 Mbstring 扩展的 mb_str_split 函数具有相似的语义,但主要区别在于mb_str_split 函数将字符串拆分为 Unicode 多字节字符,而 ...

详情...
编程

Composer Package Executor (CPX,Composer 包执行器) - 将 NPX 功能带到 Composer

825 2024-10-29 23:29:00

厌倦了跨项目管理不同的开发工具?cpx(Composer Package Executor,Composer 包执行器)是 Liam Hammett 开发的一个便利的工具,可以简化你的工作流程。类似于 npm 的 npx,cpx 允许你在 Composer 包中运行任何命令,即使它没有安装在你的项目中。告别版本冲突和安装麻烦。cpx 负责幕后的包安装和更新,...

详情...
编程

不要在服务器上运行 composer update

884 2024-10-28 15:33:00

你习惯在服务器上使用 Composer 吗,最近有博主分享了一个有趣(但很重要的)关于理智使用 Composer 的观点。因此,假设因某种原因需要更新服务器上的 Composer 包,那么在服务器上运行 composer update 可能会出错。这将用新的包更新 composer.lock 文件,服务器上会留下一个脏的存储库。你陷入了这种困境,你可能不想从...

详情...
编程

始终在 Laravel 中将 API 异常渲染为 JSON

1171 2024-10-28 02:31:00

你是否曾经使用如下自定义中间件强制让异常的 API 请求返回 JSON...

详情...
编程

TemPHPest PHP 的 VSCode 扩展

1072 2024-10-14 14:45:00

TemPHPest 是 Visual Studio Code 的一个扩展,用于改进在 VS Code 中编写 PHP。由 Liam Hammett 创建,这个包添加了丰富的 PHP 功能,这将极大地增强编写 PHP 时的体验:TemPHPest 扩展特性用于文件创建的桩代码自动重命名Code Actions自动切换到 PHP 语言从单引号到双引号的自动插值Sn...

详情...
编程

PHP 发布周期更新

1364 2024-10-10 01:27:00

PHP 核心团队已经通过了一份 RFC,其中概述了对当前活动和未来 PHP 版本的发布周期的一些重要更改。发布周期更新 RFC 要求对几项更改进行评论和投票,其中两项最重要的更改包括将每个 PHP 版本的主动维护期从一年延长到两年,并将主动支持和终止日期与日历年年底对齐。在此更改之前,每个主要的 PHP 版本(如 PHP 8.3、8.4、8.5 等)都会收到...

详情...
编程

Codeigniter v4.5.0 版本发布

1354 2024-09-04 23:39:00

Codeigniter v4.5.0 发布了,附带许多增强特性!v4.5.0 是一个 minor 级的更新,它包含了增强及漏洞修复。它需要 PHP 8.1 或更高版本。不幸的是,其中也有许多破坏性更新。不过,许多用户都不会受到大部分破坏性更新的影响。所有这些更改都提供了更合适的行为。但是其中一些突破性的更改会破坏你的应用,所以请谨慎升级。请仔细阅读变更日志和...

详情...
编程

带你深入了解 PHP 8.4 的属性钩子

1970 2024-09-04 05:18:00

属性挂钩允许你自定义类属性的 getter 和 setter 逻辑,而无需编写单独的 getter 和 setter 方法。这意味着你可以直接在属性声明中定义逻辑,这样你就可以直接访问属性(如 $user->firstName),而无调用方法(如 $user->getFirstName() 和 $user->setFirstName())。

详情...