php教程技术文章
-
PDOStatement::fetchColumn() 读取单列很方便,但 0、NULL、false 和无结果分别代表什么,不能靠 if 判断猜。本文用 PHP PDO 查询场景拆开返回值边界,并给出行存在性、空值和布尔字段的验收写法。147 收藏 -
DateTimeImmutable 用 modify('+1 month') 修改月底日期时不会自动截断到目标月末,而是按相对日期规则继续归一化。本文解释月份溢出的原因,并给出月底对齐、显式日号校正和回归测试写法。147 收藏 -
PHP Transliterator 依靠 intl 扩展和 ICU 规则完成多语言音译。本文用 Any-Latin、Latin-ASCII、Lower() 组成规则链,说明对象创建、transliterate 返回值、start/end 局部范围和自定义规则的边界。144 收藏 -
PHP PDO 批量写入时,预处理语句负责参数绑定,事务负责把一批 execute 组织成可提交或可回滚的整体。本文给出统一 rollback、批次拆分和提交后重试的实现边界。143 收藏 -
PHP Attributes适合保存字段校验规则,但不会自动执行校验。本文用ReflectionProperty读取属性元数据,实例化规则并统一收集错误,同时说明继承筛选、重复声明和缓存边界。141 收藏 -
PHP password_needs_rehash 不负责验证密码,而是比较存储哈希与当前算法、cost 等策略;本文用登录复盘说明何时判断过时、如何安全重算并写回。139 收藏 -
session.lazy_write 会比较会话打开时与关闭时的序列化数据;内容未变时,默认 files 保存器只更新时间戳而不重写整段会话数据。本文解释数据生命周期、失效场景与自定义保存器要求。139 收藏 -
PHP 8.1+ 中,backed enum 可以把稳定的 string 或 int 值直接映射到 JSON 接口字段;本文说明响应序列化、请求回填、tryFrom 校验和 JsonSerializable 自定义输出的边界。139 收藏 -
PHP grapheme_strpos 按字素簇而非字节计算起点和返回位置。通过组合重音示例对比strpos与mb_strpos,并给出同单位截取、严格判断false和转换字节位置的写法。139 收藏 -
本文讲解在 Lara vel 中从数据库查询结果中提取纯整数(如 100)而非对象或 JSON 字符串的方法,重点解决 select('price')->get() 返回集合后如何安全获取原始整数值的问题。 本文讲解在 Lara vel 中从数据库查询结果中提取纯整数(如 100)而非对象或 JSO138 收藏 -
用 PHP readonly 属性或 readonly class 封装经过校验的配置对象,说明构造阶段赋值、数组与对象边界,以及 PHP 8.1 和 8.2+ 的兼容写法。138 收藏 -
PHP Composer 的 config.platform 只改变依赖解析时看到的平台版本,不能证明生产环境真的满足要求。本文用 composer.json、composer update 与 check-platform-reqs 拆开迁移检查,帮助确认目标 PHP 和扩展是否可以发布。137 收藏 -
文章 · php教程 | 1星期前 | unicode · 字符串处理 · php教程 · php unicode Intl Normalizer Decomposition_Mapping getRawDecomposition
用 PHP intl 扩展读取单个 UTF-8 码点的 Decomposition_Mapping,说明 getRawDecomposition 返回分解字符串、null 和 intl 错误信息时分别代表什么。137 收藏 -
PHP 8.4 属性钩子中,set 内用精确的同名属性语法写入的是背后存储,不会再次触发自身;本文还区分虚拟属性、动态访问和跨属性钩子带来的递归风险。136 收藏 -
PHP 枚举与数据库状态字段如果同时演进,最容易在重命名、删值和分批发布时产生漂移。本文给出稳定 backed value、集中映射、旧值兼容和分阶段迁移的完整做法。135 收藏