php教程技术文章
-
PHP 读取自有 INI 配置时,可以使用 process_sections=true 保留节层级,并用 INI_SCANNER_TYPED 尽可能保留 true、false、null 和整数类型。本文说明三种扫描模式、严格失败判断、常量替换和不可信配置的回退策略。226 收藏 -
通过提醒与截止日期的独立派生示例,说明 DateTimeImmutable 如何保留基准日期、接收链式调用返回值,并处理旧 DateTime 转换与迁移中的赋值误区。431 收藏 -
PHP-FPM 的 pm.status_path 只负责定义状态页 URI,真正的暴露还需要 Web 服务器转发与访问控制。本文说明 pool 配置、Nginx FastCGI 转发、内网限制以及主池繁忙时使用 pm.status_listen 的边界。306 收藏 -
PHP Transliterator 依靠 intl 扩展和 ICU 规则完成多语言音译。本文用 Any-Latin、Latin-ASCII、Lower() 组成规则链,说明对象创建、transliterate 返回值、start/end 局部范围和自定义规则的边界。144 收藏 -
讲清 PDOStatement::fetchColumn 的零基列索引、逐行读取和 false 耗尽标志,通过独立 SQLite 示例保留零值、空串与 NULL,并说明布尔字段为什么适合整行读取。422 收藏 -
文章 · php教程 | 5小时前 | 超时 · 错误处理 · PHP · 请求超时 curl_exec PHP cURL CURLOPT_TIMEOUT_MS CURLOPT_CONNECTTIMEOUT_MS
用 CURLOPT_CONNECTTIMEOUT_MS 限制连接阶段,用 CURLOPT_TIMEOUT_MS 限制整次 cURL 操作,并通过 curl_errno、curl_error 和 HTTP 状态码区分传输超时与服务端响应。298 收藏 -
PHP 的 HTTP 流请求可以在 stream_context_create() 的 http 选项中设置 timeout,单位是秒,也支持小数。本文用 file_get_contents() 和 fopen() 说明最小写法、失败处理、POST 内容,以及 timeout 与整体业务耗时的区别。468 收藏 -
PHP 的 finally 会在 try/catch 之后执行;如果 finally 中再次 return,就会覆盖原本准备返回的值,甚至让异常无法继续向外传播。本文用最小示例拆解这个控制流边界。435 收藏 -
PHP enum_exists() 用于判断名称是否对应已定义的枚举类型。本文拆解全限定类名、autoload 参数、普通类区分,以及配置输入场景中的白名单和审计边界。476 收藏 -
PHP 8.0 及以上可以用 str_ends_with() 判断字符串后缀。本文说明参数顺序、大小写敏感、空字符串返回 true,以及文件扩展名封装时的版本与编码边界。341 收藏 -
PHP 8.4 新增的 array_find() 会按回调条件返回数组中首个匹配元素的值;本文说明 value、key 参数、短路行为、null 未命中、array_find_key() 与旧版本 foreach 兼容写法。135 收藏 -
文章 · php教程 | 18小时前 | pdo · php教程 · 异常排查 · php pdo 参数类型 预处理语句 bindParam bindValue PDOStatement PDO::PARAM_INT
PHP PDO 查询异常常与参数类型和绑定时机有关。本文解释 bindValue 默认类型、PDO::PARAM_* 的选择,以及 bindValue 与 bindParam 的取值差异,帮助你稳定处理 ID、分页、布尔值和 NULL。381 收藏 -
PHP 金额格式化应把 ICU locale 与 ISO 4217 货币代码分开指定:locale 决定分组和符号排版,formatCurrency() 决定展示哪种货币。本文用 NumberFormatter 说明允许集合、小数位、舍入、setlocale 边界以及展示与汇率计算的职责区别。216 收藏 -
PHP 7/8 中用 Throwable 统一捕获 Error 与 Exception,本文给出日志字段设计、局部捕获和全局兜底写法,并划清 warning、notice 的处理边界。321 收藏 -
PHP-FPM 的 pm.max_children 不能只按 CPU 核数拍脑袋。本文从内存、CPU、数据库连接和排队风险四个约束估算起始值,再用 status 页面判断是否需要继续调整。132 收藏