PHP 常用函数速查
按字符串、数组、数值、日期、文件、JSON 分类搜索 PHP 常用函数,每条给出 PHP 8 签名、中文说明、可运行示例与等效 JavaScript 写法,并标出多字节、宽松比较等迁移易踩的坑。
这张表的使用方式
左边搜函数名、中文用途或 JS 侧的写法,右边给签名、示例和等价 JavaScript —— 从 PHP 迁到别的语言时最省事的是这一列。
示例是可直接粘贴运行的写法,不是伪代码;带 <code>//</code> 注释的是返回结果。
PHP 与 JS 差得最多的几处
<code>strlen</code> 数字节、JS 的 <code>length</code> 数字符,中文差三倍;PHP 数组是哈希表,JS 的对象键序与整数键规则也不同(PHP 里 <code>"1"</code> 和 <code>1</code> 是同一个键)。
<code>in_array</code> 第三个参数默认是松散比较,<code>in_array('1', [1])</code> 会是 true,JS 的 <code>includes</code> 始终是严格比较 —— 这类默认值差异是迁移时最容易踩的坑,表里都标了。
口径说明
收录的是日常最常用的那批,不是完整手册;签名按 PHP 8 的写法(含类型与返回类型),默认参数一并标出。
需要 <code>ext-mbstring</code>、<code>ext-intl</code> 之类扩展的函数在说明里写明了;行为随版本变过的(比如 <code>str_contains</code> 是 8.0 才有)也标了版本。
常见问题
能在页面上跑 PHP 吗?
不能。工具页是纯静态的,不会把代码发到任何服务器执行。这里提供的是签名、语义和示例的速查,IDE 里补全能做的它都能查到。
为什么没有列出全部函数?
PHP 有几千个函数,逐个列出来反而没人翻。这里挑的是写业务代码时真正常用的,查不到的用官方手册按前缀搜更快。
示例里的 // 后面是真实输出吗?
是,按文档里的行为手算的,包括边界情况(比如 <code>substr</code> 越界返回空串、<code>array_unique</code> 会把 1 和 '1' 当同一个)。但版本差异可能导致个别函数在 7.x 下表现不同,落地前拿真实环境跑一遍最稳。