php教程技术文章
-
PHP 8.5 的 array_last() 可以直接取得数组最后一个值,空数组返回 null,且不依赖连续数字下标。本文用事件列表场景拆解非连续键、空值判断和 PHP 8.4 及更早版本的兼容写法。501 收藏 -
文章 · php教程 | 4天前 | 数据校验 · php教程 · PHP 8.4 · 对象设计 · PHP 8.4 Property Hooks 金额校验 set 访问器 InvalidArgumentException
PHP 8.4 property hooks 可以把金额字段的归一化和范围校验放在属性写入边界。本文用订单金额对象演示 set 访问器、异常回滚、构造初始化和 PHP 8.3 兼容写法。499 收藏 -
后台权限代码最怕把未知角色当成普通用户继续执行。本文用 PHP 8.2 枚举定义角色和动作,通过显式策略映射、拒绝默认分支与审计日志,把权限判断做成可测试、可追踪的边界。495 收藏 -
用 PHP preg_replace_callback_array 处理 Markdown 标记时,规则顺序会影响代码片段、链接和强调语法。本文用一组可运行的回调规则说明如何分阶段保护、替换和恢复文本,避免嵌套替换与回调串线。492 收藏 -
PHP preg_match 返回 0 和 false 不是一回事:0 表示正则语法有效但没有匹配,false 表示调用或正则本身出错。本文用手机号校验和 UTF-8 异常案例拆开判断顺序,给出日志记录、错误定位和边界检查方法。489 收藏 -
如果这里要校验的是一个单独的嵌套对象,比如 { "adminEmail": "...", "forumName": "..." },而不是对象数组,那 @RestRequestParam 的 map 应该设为 false,同时继续保留 @ConstraintsCollection。原因其实很直接:它488 收藏 -
文章 · php教程 | 1星期前 | JSON · 数据校验 · 异常处理 · PHP · 接口开发 · php json_decode JSON_THROW_ON_ERROR JSON_ERROR_DEPTH JSON_ERROR_SYNTAX
PHP json_decode 返回 null 时,先区分合法 JSON 的 null、语法错误、深度超限和编码问题,再用 JSON_THROW_ON_ERROR 与 json_last_error_msg() 留下可定位的异常证据。484 收藏 -
文章 · php教程 | 2天前 | WEB开发 · 安全 · PHP · session · 登录鉴权 · php session session.use_strict_mode session_regenerate_id 会话固定
PHP 会话固定防护不能只依赖一个配置项。本文从 session.use_strict_mode 的接收规则讲起,演示登录前后如何轮换 session_id,并说明旧 Cookie、并发请求和自定义 SessionHandler 的边界。483 收藏 -
PHP 8.2 的 readonly class 能把值对象的写入边界收紧到构造阶段,但它不等于深度不可变。本文用 Address 和 OrderSnapshot 说明构造、内部对象、clone 与继承限制。480 收藏 -
PHP 8.5 的 array_last() 可以直接取得数组最后一个值,空数组返回 null,且不依赖连续数字下标。本文用事件列表场景拆解非连续键、空值判断和 PHP 8.4 及更早版本的兼容写法。479 收藏 -
SPLFixedArray 适合固定长度、按整数下标顺序消费的批处理缓存,但不适合需要稀疏键、频繁扩容或复杂关联字段的场景。本文用可运行示例核对输入、校验、顺序读取和内存观测边界。477 收藏 -
PHP 8.4 为 round() 引入 RoundingMode 枚举和四种新舍入方向,同时把非法 mode 从静默回退改为 ValueError。本文用正负数、金额和负 precision 场景核对迁移边界。476 收藏 -
PHP FFI::new 可以按 C 声明创建结构体或数组,但 owned、persistent 和 FFI::free 的组合决定了内存由谁负责。本文用一个消息结构体拆开指针类型、释放时机和生产环境的禁用边界。472 收藏 -
本文介绍如何在 Lara vel 中基于 Carbon 实现一个周期性轮播的每日事件调度逻辑:将 10 个事件按星期顺序循环分配(如周一→事件1、周二→事件2…周日→事件7、下周一→事件8,依此类推),支持自动取模回环,适用于课程表、值班表、内容推送等场景。 这段内容要解决的,是在 Lara vel469 收藏 -
文章 · php教程 | 6天前 | PHP · 并发控制 · 线上排查 · 会话管理 · 配置验收 · php session.save_path PHP会话 session_write_close session.lazy_write
PHP session.lazy_write 默认只在会话数据发生变化时重写文件,排查时容易把正常行为误判为会话丢失。本文从 session.save_path、文件权限、会话锁和 session_write_close 入手,给出可复现的核对脚本与上线检查清单。469 收藏