php教程技术文章
-
文章 · php教程 | 5天前 | 登录 · Cookie · PHP · session · secure · SameSite · php cookie session Secure SameSite session_start
PHP Session cookie 可以在 session_start 前用 options 数组同时配置 SameSite、Secure 和 HttpOnly。本文说明 Lax 与 Strict 的选择、HTTPS 前提,以及 cookie 生命周期和服务端 Session 清理的区别。124 收藏 -
文章 · php教程 | 1小时前 | PHP · 文件流 · 故障排查 · stream_copy_to_stream · 文件复制 短写 stream_copy_to_stream PHP流 流位置
stream_copy_to_stream 返回字节数偏少时,先区分源流已到当前位置、length 限制、offset 语义和目标流失败。本文给出可复制的 PHP 排查代码与边界清单。123 收藏 -
PHP 并行 cURL 中 curl_multi_select 返回 0 通常表示等待超时而非请求失败。本文区分 0、-1 和正数,给出避免忙等、读取错误与回收句柄的排查方法。121 收藏 -
本文介绍如何在 PHP 中对带小数点(radix)的任意精度数值进行十进制与十六进制的高精度双向转换,解决 bcmath 缺乏进制转换能力的问题,并推荐成熟、可部署于共享主机的纯 PHP 解决方案。 本文介绍如何在 PHP 中对带小数点(radix)的任意精度数值进行十进制与十六进制的高精度双向转换118 收藏 -
文章 · php教程 | 3星期前 | WEB开发 · 文件上传 · PHP · 安全校验 · Fileinfo · PHP 文件上传 move_uploaded_file MIME finfo_file is_uploaded_file
PHP 文件上传不能只看扩展名和浏览器传来的 MIME 字段。本文用 finfo_file() 检查临时文件的真实类型,再配合大小、错误码、is_uploaded_file() 和 move_uploaded_file() 建立一条可验证的上传边界,并说明校验通过后仍要如何限制保存路径和访问方式。117 收藏 -
文章 · php教程 | 2星期前 | PHP · 日期时间 · DatePeriod · PHP 8.2 · 时间区间 · php DateInterval DatePeriod INCLUDE_END_DATE 日期区间
PHP DatePeriod 默认不把结束日期放进迭代结果。本文用按天生成账单日期的例子说明 INCLUDE_END_DATE、EXCLUDE_START_DATE 的组合、PHP 版本边界和可复现的遍历验收。114 收藏 -
PHP 8.4 新增 mb_ucfirst(),可以按多字节字符安全处理标题首字母。本文从 UTF-8 标题清洗场景出发,核对编码、空字符串、null 参数和 PHP 8.3 兼容写法,给出可回归的最小实现。111 收藏 -
preg_match 配合 PREG_OFFSET_CAPTURE 返回的是匹配文本和字节偏移,不是中文字符下标。本文用 UTF-8 文本拆解偏移量、mb_substr 截取和 offset 参数的校验边界。111 收藏 -
用 PHP 自定义 session handler 把序列化会话写入 Redis,并通过 SET NX EX、随机 token 和 TTL 处理并发写入与过期回收。110 收藏 -
PHP 8.4 与 8.5 的 #[\Deprecated] 支持范围不同。本文从旧 API 迁移现场出发,用函数、trait、类常量和全局常量示例,验证弃用信号、Reflection 与版本兼容边界。107 收藏 -
PHP match 没有命中任何分支时会抛出 UnhandledMatchError。本文用状态映射示例说明何时保留异常、何时增加 default,并给出输入校验与测试边界。107 收藏 -
PHP DateTime 时区转换后日期跨天,通常是同一时间点在目标时区的本地日期不同。本文区分 setTimezone、setTime 和字符串解析,说明如何保留原始时间并按业务时区计算日期。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 8.3 的 readonly class 适合承载不可变请求 DTO,但它不会自动完成 JSON 类型校验。本文从订单请求反序列化出发,说明构造器边界、字段校验、异常响应与版本兼容检查。105 收藏 -
PHP readonly 属性排查指南:从 PHP 版本、类型声明和初始化作用域入手,定位重复赋值、引用修改、数组间接修改、对象内部可变与继承边界。104 收藏