php教程技术文章
-
用 PHP filter_var 校验 URL 和邮箱时,应分别选择 FILTER_VALIDATE_URL 与 FILTER_VALIDATE_EMAIL,并严格比较返回值。本文还说明 URL 协议白名单、路径要求、ASCII 限制,以及邮箱语法通过不代表邮箱真实存在等边界。491 收藏 -
PHP array_reduce 的关键不是自动分组,而是让回调持续返回新的累加器。本文用订单分类示例说明如何创建分组、追加重复分类,处理 initial、空数组和缺失字段,并给出可复制的 PHP 写法。398 收藏 -
通过编码列与数量列示例,解释 PHP array_map 的多数组位置配对、返回键和缺项行为,并比较命名回调、null 打包与业务键关联的适用条件。241 收藏 -
用 opcache_get_configuration 和 opcache_get_status 读出 interned_strings_buffer 的真实容量、已用空间与剩余空间,再按 FPM 实际配置完成可回滚调整。498 收藏 -
PHP 8.4 起 fgetcsv 依赖 escape 默认值会触发弃用提示。本文说明如何显式传入空字符串兼容 RFC 4180,如何处理双引号与反斜杠字段,以及旧格式迁移时的边界。501 收藏 -
PHP Composer 的 config.platform 会把 PHP 与扩展版本作为虚拟平台参与依赖解析,但不会改变本机运行环境。本文用 composer.json、check-platform-reqs、platform-check 和忽略参数说明解析阶段与生产运行阶段的边界。160 收藏 -
排查PHP类型属性赋值触发TypeError的原因,区分写入位置的严格模式、空值与未初始化Error,给出正整数输入解析示例,并说明ORM水合与构造函数的边界。432 收藏 -
PHP 8.4 的 pcntl_waitid 可以按 PID 或进程组等待子进程状态。本文用 PHP 示例说明 info、WEXITED、WNOHANG、WNOWAIT 的关系,以及 false、ECHILD、EINTR、EINVAL 的处理边界。486 收藏 -
PHP array_filter 默认保留原数组键,但不带回调时会把 0、'0'、false、null 和空字符串一并视为空值。本文用严格回调保留零值,并说明按键过滤、键值同时判断以及 array_values 重排索引的边界。367 收藏 -
用 PHP curl_multi 管理多个独立请求,说明并发执行、完成结果读取、超时控制与资源释放的完整写法。371 收藏 -
PHP 异常链的关键是包装新异常时把底层 Throwable 传给构造器第三个参数,再用 getPrevious() 逐层读取。本文用分层服务示例说明保留原因、遍历链路和避免丢失上下文的边界。383 收藏 -
PHP Generator 可以把逐行读取改成惰性迭代:函数用 yield 每次产生一条记录,foreach 按需消费,配合 finally 关闭文件句柄,适合大文件顺序处理和找到目标即停止的场景。344 收藏 -
PHP preg_match 返回 1、0、false 三种结果,本文说明如何用严格比较区分无匹配和 PCRE 执行失败,并立即读取错误码与错误消息。380 收藏 -
PHP PDO 绑定 LIKE 查询时,SQL 只保留占位符,程序先按数据库规则转义用户输入中的百分号、下划线和反斜杠,再把完整模式值绑定进去。本文用包含、前缀和后缀匹配示例说明如何安全表达搜索意图。411 收藏 -
PHP parse_url 不会替 URL 自动补上协议默认端口。要区分未写端口和显式写出的默认端口,应读取完整数组并用 array_key_exists 判断 port 键;使用 PHP_URL_PORT 时,组件不存在会返回 null。451 收藏