JSON转PHP数组
把 JSON 转成 PHP 数组。
这个工具能做什么
把一段 JSON 文本转成等价的 PHP array 字面量,键值对用 => 连接,最外层和嵌套层都用 PHP 5.4 起支持的短数组 [] 语法。日常开发里经常遇到这种情况:拿到接口返回的一段 JSON,或者从文档、抓包工具里复制的配置片段,想直接放进 PHP 代码当默认配置、测试桩或常量数组用。手动把双引号换成单引号、把冒号改成 =>、给每层套上 array 再逐行缩进,既慢又容易漏改引号导致语法错。这个 json转php 工具就是把这一步自动化,粘进去就能拿到可以直接贴回源码的 PHP 数组代码。
它的工作方式不是简单的文本替换,而是先把 JSON 按标准语法解析成内存里的树状数据结构,再递归遍历这棵树重新序列化成 PHP 语法。JSON 对象转成带字符串键的关联数组(key => value),JSON 数组转成索引数组,数字、布尔值 true/false、null 分别映射到 PHP 的对应字面量。字符串输出时统一用单引号包裹,因为 PHP 单引号字符串不做变量插值也不解析 \n 之类的转义序列,只需要转义单引号本身和反斜杠两个字符,比双引号更安全可控。整个过程按 UTF-8 处理文本,中文等非 ASCII 字符会原样保留,不会被转成 \uXXXX 形式。本地处理不上传,粘贴的数据不会离开浏览器。
最常见的用法是把第三方接口的返回样例固化进代码。比如支付、地图或短信平台文档里给了一段 JSON 响应示例,你想在本地先把业务逻辑跑通,直接粘进来转成 PHP 数组,赋值给变量当 mock 数据就能用。另一个场景是配置迁移:手上有一份 JSON 格式的配置(路由表、字段映射、多语言词条),想改成 config 目录下 return [...]; 的 PHP 配置文件,转完稍作整理即可落地。写 PHPUnit 测试时也常用它把预期结果的 JSON 快速变成 fixture 数组,省去手敲括号和引号的时间。
有几个边界情况值得留意。JSON 规范里对象的键一定是字符串,所以转出来的关联数组键都是带引号的字符串键,即使原文写的是 "0"、"1" 这样的数字串,也不会自动变成整型键,需要时得自己处理。JSON 不合法(缺逗号、有尾逗号、键没加双引号、用了单引号或注释)会导致解析失败,这类问题要先把 JSON 本身修正合法再转。它和 PHP 自带的 var_export 思路相近,区别在于 var_export 作用于运行时已有的 PHP 变量,而这个工具的输入是纯 JSON 文本,适合在不跑 PHP 的情况下直接把外部数据变成 array 代码。
JSON转PHP数组是一个免费的在线工具,打开网页就能用,不用下载也不用注册。平时大家搜的“json转php”、“json转php数组”、“json转array”,说的都是这个。
常见使用场景
- 把接口返回的 JSON 示例粘成 PHP mock 数据
- 将 JSON 配置改写成 config 目录的 PHP 数组文件
- 写 PHPUnit 测试时快速生成 fixture 数组
- 把抓包得到的 JSON 转成代码里的常量数组
- 文档里的 JSON 响应示例转成 PHP 变量
使用方法
- 把内容粘贴到输入框(生成类工具直接设置选项)。
- 按需要选择选项,点操作按钮。
- 结果出现在下方,点「复制结果」即可带走。