php教程技术文章
-
整理 PHP 子类重写方法时的参数逆变、返回值协变、可选参数、可见性和 PHP 8.1 内部方法返回类型提示,给出可直接使用的兼容性检查清单。353 收藏 -
通过 characters 参数把数字或指定符号纳入 PHP str_word_count 的单词识别,并对比 format=0、1、2 的返回结果,说明 locale 与多字节文本的边界。352 收藏 -
本文用 PHP Intl NumberFormatter 说明怎样按 locale 输出普通数字、货币和百分比,怎样设置小数位与舍入规则,以及如何处理格式化失败。351 收藏 -
PHP 8.5 将 chr() 接收 0 到 255 之外整数的行为标记为弃用。文章从字节输入、负数与大整数、编码边界和回归测试出发,给出兼容 PHP 8.5 的改造顺序。350 收藏 -
PHP mb_strtolower 适合对 UTF-8 等多字节文本做 Unicode 小写转换。中文本身没有大小写变化,关键是显式指定编码、区分 strtolower 与大小写折叠需求,并处理 mbstring 扩展和无效编码。350 收藏 -
用 DateTimeZone::getTransitions 读取时区偏移变更,再结合 DateTimeImmutable 做缺口时间和重复时间的核对,避免把固定 UTC 偏移当成地区时区。348 收藏 -
本文梳理 PHP parse_url 解析相对地址时的可选字段、缺失键、null 与空字符串差异,并给出安全读取和入口分流写法。348 收藏 -
PHP 8.4 引入 Dom\HTMLDocument,用于按 HTML5 living standard 解析字符串或文件。本文从旧 DOMDocument::loadHTML 的兼容场景出发,演示 createFromString、HTML 命名空间、编码和回退分支的验收方法。347 收藏 -
文章 · php教程 | 2个月前 | 异常处理 · PHP · 版本迁移 · PHP 8.5 · 输入校验 · 输入校验 filter_input PHP 8.5 FILTER_THROW_ON_FAILURE 异常迁移
PHP 8.5 为 filter_var、filter_input 等过滤函数增加 FILTER_THROW_ON_FAILURE 标志,失败时从返回 false 改为抛出 ValueError。本文对比旧写法和新写法,说明 flag 组合、空值处理、异常边界与回归清单。347 收藏 -
PHP 8.4 属性钩子可以把输入归一化放进属性声明附近,但它不会替代完整的业务校验。本文通过金额和状态字段,说明 set 钩子的触发边界、类型约束、异常处理与旧版本回退方式。347 收藏 -
PHP array_filter 不传 callback 时会按 empty() 语义过滤,0、"0"、false、null 和空字符串都可能被删除。本文拆开默认参数、显式回调、键名保留和 array_values() 重排的边界,避免清洗数据时误删有效零值。347 收藏 -
PHP DOMDocument 读取不可信 XML 时,真正需要控制的是外部实体加载、实体替换和网络访问三个边界。本文给出兼容 PHP 8.x 的解析入口,并解释 LIBXML_NOENT、LIBXML_NONET、LIBXML_NO_XXE 与自定义实体加载器的组合关系。347 收藏 -
用 PHP Reflection API 检查联合类型参数时,先区分 ReflectionNamedType 与 ReflectionUnionType,再处理 nullable 标记,避免把 null、单类型和多类型混成一个判断分支。346 收藏 -
PDO::FETCH_KEY_PAIR 能把严格两列的查询结果直接变成键值数组:第一列作为键,第二列作为值。本文给出最小写法、预处理示例、与 array_column 和 FETCH_UNIQUE 的区别,以及重复键和一对多关系的处理边界。346 收藏 -
PHP NumberFormatter 通过 locale 决定数字与货币的地区展示规则,再由 formatCurrency() 接收 ISO 货币代码生成金额文本。本文说明创建格式化器、小数位控制、错误处理和接口边界。346 收藏