适配 Yii 3.0,php-casbin/yii-permission 3.0 正式发布

php-casbin/yii-permission 3.0 已正式发布,重点是完成对 Yii 3.0 组件化生态的适配,并把权限拦截迁移到 PSR-15 中间件体系。对正在评估 Yii 3 权限方案的 PHP 开发者来说,这一版本的价值主要体现在环境要求、接入方式和升级成本三个方面。

适配 Yii 3.0,php-casbin/yii-permission 3.0 正式发布

Linux 系统中 PHP 错误如何排查

Linux 环境下排查 PHP 错误,核心不是盲目改代码,而是先把错误来源分层定位:日志、显示开关、语法、权限、配置、扩展,再到 Xdebug 这类深度调试工具。按这个顺序处理,通常能更快判断问题究竟出在脚本本身、运行环境,还是依赖缺失。

Linux 系统中 PHP 错误如何排查

如何利用 Linux 优化 PHP 代码

Linux 环境下跑 PHP,性能差距往往不在“语言本身”,而在版本、进程管理、缓存、数据库和系统参数这些基础环节。本文按实际排查顺序梳理 PHP 优化要点,并给出 PHP-FPM、OPcache 和运维维护中的关键配置思路。

如何利用 Linux 优化 PHP 代码

PHP 8.6 的 session.use_strict_mode 怎么开,怎么确认真的生效

在 PHP 8.6 里,`session.use_strict_mode` 依旧要通过 `php.ini` 打开,单靠 `ini_set()` 不能保证生效,尤其在 CGI/FastCGI 场景更不可靠。本文按“怎么开、为什么开、怎么验证”的顺序梳理关键步骤,并补上建议一并启用的会话安全项。 很多项目会把 Session 安全配置留到上线前再处理,但 session.use_strict_mode 其实属于应该尽早确认的一项。

PHP 8.6 的 session.use_strict_mode 怎么开,怎么确认真的生效

PHP 8.6 如何设置 PHP-FPM 状态页访问

在 PHP 8.6 中启用 PHP-FPM 状态页,本质上还是配置 `pm.status_path`,再让 Nginx 以受控方式把请求转发给 FPM。本文按“进程池设置、服务重载、Nginx 路由、安全验证”四步整理,并补出容易踩到的访问限制与排错要点。 PHP 8.6 中开启 PHP-FPM 状态页并不难,真正容易出错的是请求怎么转发、哪些来源能访问,以及改完配置后为什么仍然没有响应。

PHP 8.6 如何设置 PHP-FPM 状态页访问

Gin 动态注册路由原理:Radix Tree、分组前缀与匹配顺序

Gin 所谓“动态注册路由”,本质上是应用启动阶段把规则写入按 HTTP 方法划分的 Radix Tree,而不是服务运行后临时新增。理解路径拆分、分组前缀拼接和插入顺序的约束,才能判断为什么有些路由会冲突、被覆盖,甚至直接触发 panic。

Gin 动态注册路由原理:Radix Tree、分组前缀与匹配顺序

PHP 8.6 如何启用 Zend OPcache 的预加载

在 PHP 8.6 中启用 Zend OPcache 预加载,核心不是“运行时加速开关”,而是在主进程启动阶段提前编译指定脚本并驻留共享内存。文章按环境前提、preload.php 编写方式、php.ini 配置和生效验证四步梳理,帮助你判断当前部署是否适合启用,以及出问题时该从哪里排查。

PHP 8.6 如何启用 Zend OPcache 的预加载

如何从树形结构中准确提取所有叶子节点和父节点 ID

构建多层树结构时,很多代码能生成 `tree`,却遗漏了子树递归返回的 `leaf_ids` 和 `parent_ids`,结果就是叶子节点为空、父节点收集不完整。本文用一段 PHP 示例说明问题根源、修复方式、验证结果,以及在真实业务里需要注意的 ID 唯一性、根节点映射与性能边界。

如何从树形结构中准确提取所有叶子节点和父节点 ID

PHP 在 Linux 上如何配置优化

在 Linux 上优化 PHP,核心不是堆参数,而是先把 PHP-FPM、php.ini 和 Web 服务器三层关系理顺。本文按实际部署顺序整理常用配置项,保留可直接落地的参数和命令,并说明哪些值适合通用场景、哪些必须结合内存、并发和业务特征来调整。

PHP 在 Linux 上如何配置优化

LNMP 中 PHP 如何写出更高效的代码

在 LNMP 架构里,PHP 性能问题往往不只出在语法本身,而是版本、数据库访问、缓存、资源管理和异步处理共同叠加的结果。本文按实际优化链路重组要点,帮助你快速判断哪些做法最值得优先落地,哪些习惯最容易拖慢线上服务。

LNMP 中 PHP 如何写出更高效的代码