php教程技术文章
-
对比 PHP json_validate 与 json_decode 的语法校验、值构建、depth、flags 和错误处理边界,说明什么时候只校验、什么时候直接解码,以及 PHP 8.2 的兼容写法。107 收藏 -
PHP MultipleIterator 默认要求所有子迭代器同时有效。本文用 MIT_NEED_ANY 和 MIT_KEYS_ASSOC 演示如何并排遍历长度不同的集合,并处理缺失字段、null、关联键名和边界条件。107 收藏 -
文章 · php教程 | 2个月前 | HTTP · 文件上传 · PHP · PHP 8.4 · multipart/form-data PHP 8.4 request_parse_body PUT文件上传
PHP 8.4 的 request_parse_body() 让 PUT、PATCH 等非 POST 请求也能解析表单和文件。用一个可运行的小接口说明请求体只能读取一次、上传大小覆盖和失败验收。106 收藏 -
PHP fdiv 按 IEEE 754 处理浮点除法,除数为零时可能返回 INF、-INF 或 NAN。本文用结果分类、业务分支和 / 运算符对比说明如何安全处理这些特殊值。106 收藏 -
PHP 8.5 的 clone() 可以在复制对象时用关联数组覆盖少量属性,未列出的属性继续从原对象复制。本文从 readonly 值对象的排查现场出发,说明 clone-with 的写法、__clone() 顺序、可见性边界和旧版本兼容方案。106 收藏 -
PHP 7.3+ 可在 session_set_cookie_params 的 options 数组中设置 samesite。多数站点从 Lax 起步;Strict 更严格;确需跨站会话时才用 None,并同时启用 Secure。本文给出完整代码、响应头验证、故障处理和回滚清单。105 收藏 -
PHP 8.5 允许 Deprecated 属性标记类外编译期常量。本文用一个可迁移的例子说明属性写法、弃用提示、ReflectionConstant 盘点与旧版本兼容边界。105 收藏 -
PHP readonly 属性排查指南:从 PHP 版本、类型声明和初始化作用域入手,定位重复赋值、引用修改、数组间接修改、对象内部可变与继承边界。104 收藏 -
PHP OPcache preload 在服务器进程启动时把类与函数载入持久内存,预加载实体不会像普通脚本那样随时间戳检查刷新。本文说明为什么改代码后必须重建 PHP-FPM 进程,以及如何做可观测、可回退的发布。104 收藏 -
说明 PHP OPcache 命中统计的运行范围、只读状态采集和区间比例计算,区分冷启动、容量压力、计数重置与CLI环境,避免通过反复清缓存或盲目关闭时间戳检查追求命中率。104 收藏 -
PHP 方括号访问字符串时按字节处理,中文等 UTF-8 文本不能直接当作单字节字符数组使用。本文区分字节偏移与字符偏移,给出 mb_strlen、mb_substr、mb_strpos 和字符级封装的安全写法。103 收藏 -
PHP array_filter 会保留原数组键名,过滤后直接 json_encode 可能得到 JSON 对象。本文用订单字段清洗示例说明默认过滤、回调签名、键名重排和嵌套数组边界。102 收藏 -
Symfony Finder 可以把 files、name、path、exclude 和 notPath 组合成一组可读的筛选规则。本文用一个 PHP 示例说明文件名与目录过滤如何叠加,以及如何记录扫描范围和结果边界。102 收藏 -
解释 PHP match 没有命中分支时抛出 UnhandledMatchError 的原因,并用 default、显式异常和输入归一化设计可靠的默认结果。100 收藏 -
PHP password_hash 的 cost 不宜照抄别人的数字。本文用一个小型登录模块说明如何在接近生产的机器上选择 bcrypt cost,并把 password_verify 与 password_needs_rehash 接入渐进升级流程。100 收藏