---
title: "PHP 中关于数组与 JSON 之间的格式类型转换 - 一纸忘忧"
description: "这段时间在开发一个短网址的 API 接口，就看了很多关于 API 的相关文章，最常用到的就是 JSON 技术，JSON 又叫做 JS 对象标记，是一种轻量级的数据交换格式，因为我的 API 开发语言是 PHP，所以在数据处理的过程中，就要用到 JSON 与 PHP 的交互，也就是数据转换。"
canonical_url: "https://www.ikxin.com/article/php-array-json"
last_updated: "2026-09-16T09:59:27.259Z"
locale: zh-cn
meta:
  "og:description": "这段时间在开发一个短网址的 API 接口，就看了很多关于 API 的相关文章，最常用到的就是 JSON 技术，JSON 又叫做 JS 对象标记，是一种轻量级的数据交换格式，因为我的 API 开发语言是 PHP，所以在数据处理的过程中，就要用到 JSON 与 PHP 的交互，也就是数据转换。"
  "og:image": "https://www.ikxin.com/_og/d/h_630%2Ca_~UEhQIOS4reWFs-S6juaVsOe7hOS4jiBKU09OIOS5i-mXtOeahOagvOW8j-exu-Wei-i9rOaNoiAtIOS4gOe6uOW~mOW~pw%2Cc_Article%2Ctitle_~UEhQIOS4reWFs-S6juaVsOe7hOS4jiBKU09OIOS5i-mXtOeahOagvOW8j-exu-Wei-i9rOaNog%2Cdescription_~6L-Z5q615pe26Ze05Zyo5byA5Y-R5LiA5Liq55-t572R5Z2A55qEIEFQSSDmjqXlj6PvvIzlsLHnnIvkuoblvojlpJrlhbPkuo4gQVBJIOeahOebuOWFs-aWh-eroO-8jOacgOW4uOeUqOWIsOeahOWwseaYryBKU09OIOaKgOacr--8jEpTT04g5Y-I5Y-r5YGaIEpTIOWvueixoeagh-iusO-8jOaYr-S4gOenjei9u-mHj-e6p-eahOaVsOaNruS6pOaNouagvOW8j--8jOWboOS4uuaIkeeahCBBUEkg5byA5Y-R6K-t6KiA5pivIFBIUO-8jOaJgOS7peWcqOaVsOaNruWkhOeQhueahOi~h-eoi-S4re-8jOWwseimgeeUqOWIsCBKU09OIOS4jiBQSFAg55qE5Lqk5LqS77yM5Lmf5bCx5piv5pWw5o2u6L2s5o2i44CC%2CsiteName_~5LiA57q45b-Y5b-n%2CsiteHost_www.ikxin.com%2Cp_Ii9hcnRpY2xlL3BocC1hcnJheS1qc29uIg%2Cs_9A6lqrywXVmMW0Ii.png"
  "og:image:alt": "PHP 中关于数组与 JSON 之间的格式类型转换 - 一纸忘忧"
  "og:image:height": "630"
  "og:image:type": image/png
  "og:image:width": "1200"
  "og:title": "PHP 中关于数组与 JSON 之间的格式类型转换"
  "twitter:image": "https://www.ikxin.com/_og/d/h_630%2Ca_~UEhQIOS4reWFs-S6juaVsOe7hOS4jiBKU09OIOS5i-mXtOeahOagvOW8j-exu-Wei-i9rOaNoiAtIOS4gOe6uOW~mOW~pw%2Cc_Article%2Ctitle_~UEhQIOS4reWFs-S6juaVsOe7hOS4jiBKU09OIOS5i-mXtOeahOagvOW8j-exu-Wei-i9rOaNog%2Cdescription_~6L-Z5q615pe26Ze05Zyo5byA5Y-R5LiA5Liq55-t572R5Z2A55qEIEFQSSDmjqXlj6PvvIzlsLHnnIvkuoblvojlpJrlhbPkuo4gQVBJIOeahOebuOWFs-aWh-eroO-8jOacgOW4uOeUqOWIsOeahOWwseaYryBKU09OIOaKgOacr--8jEpTT04g5Y-I5Y-r5YGaIEpTIOWvueixoeagh-iusO-8jOaYr-S4gOenjei9u-mHj-e6p-eahOaVsOaNruS6pOaNouagvOW8j--8jOWboOS4uuaIkeeahCBBUEkg5byA5Y-R6K-t6KiA5pivIFBIUO-8jOaJgOS7peWcqOaVsOaNruWkhOeQhueahOi~h-eoi-S4re-8jOWwseimgeeUqOWIsCBKU09OIOS4jiBQSFAg55qE5Lqk5LqS77yM5Lmf5bCx5piv5pWw5o2u6L2s5o2i44CC%2CsiteName_~5LiA57q45b-Y5b-n%2CsiteHost_www.ikxin.com%2Cp_Ii9hcnRpY2xlL3BocC1hcnJheS1qc29uIg%2Cs_9A6lqrywXVmMW0Ii.png"
  "twitter:image:alt": "PHP 中关于数组与 JSON 之间的格式类型转换 - 一纸忘忧"
---

> Index of every page on this site: [llms.txt](https://www.ikxin.com/llms.txt)

# **PHP 中关于数组与 JSON 之间的格式类型转换**

2017.08.16 4,372  0

这段时间在开发一个短网址的 API 接口，就看了很多关于 API 的相关文章，最常用到的就是 JSON 技术，JSON 又叫做 JS 对象标记，是一种轻量级的数据交换格式，因为我的 API 开发语言是 PHP，所以在数据处理的过程中，就要用到 JSON 与 PHP 的交互，也就是数据转换。

下面我主要介绍一下 JSON 与数组（Array）的转换的两种方式。

## json\_encode()

由于 JSON 只接受 UTF-8 编码的字符，所以 `json_encode()` 的参数必须是 UTF-8 编码，否则会得到空字符或者 `null`，当中文使用 `GB2312` 编码的时候，这一点要特别注意！

### 实例一（数组）

 PHP

```
<?php  
$array_a =array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);  
echo json_encode($array_a);  
?>
```

输出

 JSON

```
{"a":1,"b":2,"c":3,"d":4,"e":5}
```

### 实例二（对象）

 PHP

```
<?php
$obj->body           = 'another post';  
$obj->id             = 21;  
$obj->approved       = true;  
$obj->favorite_count = 1;  
$obj->status         = NULL;  
echo json_encode($obj);
?>
```

输出

 JSON

```
{
    "body":"another post",  
    "id":21,  
    "approved":true,  
    "favorite_count":1,  
    "status":null  
}
```

## json\_decode()

该函数用于将 JSON 文本转换为相应的 PHP 数据结构，通常情况下，`json_decode()` 总是返回一个 PHP 对象而不是数组。

### 案例三

 PHP

```
<?php
$json ='{"a":1,"b":2,"c":3,"d":4,"e":5}';
var_dump(json_decode($json));
?>
```

输出

 PHP

```
object(stdClass)#1 (5) {
　　["a"] => int(1)
　　["b"] => int(2)
　　["c"] => int(3)
　　["d"] => int(4)
　　["e"] => int(5)
}
```

如果想要强制生成 PHP 关联数组，`json_decode()` 需要加一个参数 `true`。

### 实例四

 PHP

```
<?php
$json ='{"a":1,"b":2,"c":3,"d":4,"e":5}';
var_dump(json_decode($json,true));
?>
```

输出

 PHP

```
array(5) {
 　　["a"] => int(1)
 　　["b"] => int(2)
 　　["c"] => int(3)
 　　["d"] => int(4)
 　　["e"] => int(5)
}
```

另外，JSON 只能用来表示对象（object）和数组（array），如果对字符串或数值使用 `json_decode()` 将会返回 `null` 。

## **评论**

(0)

暂无评论，来说两句吧

## **发布评论**

```json
{"@context":"https://schema.org","@graph":[{"@id":"https://www.ikxin.com/#website","@type":"WebSite","description":"一纸忘忧的个人网站，关于技术探索与日常生活，记录 Web 开发、服务端与 DevOps 实践，分享软件工具、数码体验，以及代码之外的见闻与思考。","inLanguage":"zh-CN","name":"一纸忘忧","url":"https://www.ikxin.com/","workTranslation":[{"@id":"https://www.ikxin.com/zh-tw#website"},{"@id":"https://www.ikxin.com/ko#website"},{"@id":"https://www.ikxin.com/en#website"},{"@id":"https://www.ikxin.com/ja#website"}]},{"@id":"https://www.ikxin.com/article/php-array-json#webpage","@type":"WebPage","description":"这段时间在开发一个短网址的 API 接口，就看了很多关于 API 的相关文章，最常用到的就是 JSON 技术，JSON 又叫做 JS 对象标记，是一种轻量级的数据交换格式，因为我的 API 开发语言是 PHP，所以在数据处理的过程中，就要用到 JSON 与 PHP 的交互，也就是数据转换。","name":"PHP 中关于数组与 JSON 之间的格式类型转换","url":"https://www.ikxin.com/article/php-array-json","isPartOf":{"@id":"https://www.ikxin.com/#website"},"potentialAction":[{"@type":"ReadAction","target":["https://www.ikxin.com/article/php-array-json"]}]}]}
```

## Sitemap

See the full [sitemap](https://www.ikxin.com/sitemap.md) for all pages.
