php教程技术文章
-
PHP PDO 绑定 LIKE 查询时,SQL 只保留占位符,程序先按数据库规则转义用户输入中的百分号、下划线和反斜杠,再把完整模式值绑定进去。本文用包含、前缀和后缀匹配示例说明如何安全表达搜索意图。411 收藏 -
PHP parse_url 不会替 URL 自动补上协议默认端口。要区分未写端口和显式写出的默认端口,应读取完整数组并用 array_key_exists 判断 port 键;使用 PHP_URL_PORT 时,组件不存在会返回 null。451 收藏 -
外部字符串不能直接当作枚举 case 使用。本文用 PHP backed enum 的 from 与 tryFrom,拆开可信输入、非法值、缺省值和严格类型边界,给出可维护的字符串映射写法。445 收藏 -
array_column 使用 index_key 重建数组时,重复键不会自动合并记录,后来的值会覆盖前面的值。本文说明覆盖原因,并给出保留全部记录、保留最后一条和主动拒绝重复键的写法。221 收藏 -
mb_detect_encoding 编码候选判断教程:明确候选列表与严格模式,区分字节合法性、启发式猜测和来源事实,处理多候选、false 与乱码复查。421 收藏 -
PHP 8.3 新增的 json_validate() 只返回 JSON 语法是否有效,不构建数组或对象。本文讲清参数、错误信息、版本边界,以及何时不要先验证再解码。460 收藏 -
讲清 PHP stream_context_create 设置 HTTP 超时的嵌套位置、秒数单位、file_get_contents 返回值,以及超时和 HTTP 错误的排查边界。309 收藏 -
DOMDocument 处理 HTML fragment 时,普通 HTML 适合用临时根节点包装后解析,XML 兼容片段可以用 DOMDocumentFragment 和 appendXML。本文还说明 saveHTML、UTF-8、HTML4 解析规则与 PHP 8.4 HTML5 解析边界。377 收藏 -
PHP Fiber 中的恢复值和最终返回值不是同一个概念。本文用 start、suspend、resume、getReturn 和状态判断说明如何安全接收恢复入参,并在 Fiber 终止后读取回调 return。120 收藏 -
PHP 8.2 的 Randomizer 能通过固定随机引擎、种子和调用顺序生成可复现序列。本文比较 Mt19937、Xoshiro256StarStar 与 Secure 的使用边界,并给出测试隔离和常见误区。194 收藏 -
PHP 8.4 新增的 array_all 可以判断数组元素是否全部满足回调条件。本文用订单状态示例说明 value 和 key 参数、空数组返回 true、遇到 false 短路,以及旧版本兼容边界。229 收藏 -
PHP array_find 查找首个匹配元素教程:掌握回调参数、返回值与键的区别,处理 null、false 和0,提供旧版本 foreach 兼容写法。363 收藏 -
说明 PHP createFromFormat 使用 u 解析微秒时间,并处理默认字段、时区和错误结果。442 收藏 -
用 DateTimeImmutable 和 DateTimeZone 创建时区明确的不可变时间,覆盖构造器、格式解析、默认字段与时区转换边界。209 收藏 -
PHP 8.3 起可用 mb_str_pad 按 Unicode 字符数补齐中文等多字节字符串。本文说明右侧、左侧和两侧补齐的参数写法,以及多字符填充串、版本和显示宽度边界。166 收藏