JSON PHP

JSON的常见用法是向Web服务器发送数据/从Web服务器读取数据,并在Web页面中显示数据。

本章介绍如何在客户端和PHP服务器之间交换JSON数据。

PHP JSON函数

PHP5.2.0 及以上版本已经内置 JSON 扩展。

PHP具有以下内置函数来处理JSON:功能描述json_encode()返回值的JSON表示形式

json_decode()解析JSON字符串

json_last_error()返回上一次发生的错误

json_encode()函数

可以使用PHP函数将PHP中的对象转换为JSON json_encode()。

给定的文件由json_demo1.php保存:<?php

$myObj = new stdClass();

$myObj->name = "Seagull";

$myObj->age = 22;

$myObj->city = "New Delhi";

$myJSON = json_encode($myObj);  /* 将PHP对象转换成JSON字符串 */

echo $myJSON;

?>

以下示例从上面的示例中请求PHP文件(json_demo1.php),然后使用JSON.parse()将响应转换为JavaScript对象:

示例var httpRequest = new XMLHttpRequest();

httpRequest.onreadystatechange = function() {

if (this.readyState === 4 && this.status === 200) {

var myObj = JSON.parse(this.responseText); // 将JSON 字符串转换为Object

document.getElementById("output").innerHTML = myObj.name;

}

};

httpRequest.open("GET", "json_demo1.php", true);

httpRequest.send();测试看看‹/›

通过使用PHP函数,PHP中的数组也将转换为JSON json_encode()。

给定的文件由json_demo2.php保存:<?php

$myArr = array("Seagull", "Cynthia", "Tarush");

$myJSON = json_encode($myArr);  /* 将PHP数组转换为JSON字符串 */

echo $myJSON;

?>

以下示例从上面的示例(json_demo2.php)请求PHP文件,然后使用JSON.parse()将响应转换为JavaScript数组:

示例var httpRequest = new XMLHttpRequest();

httpRequest.onreadystatechange = function() {

if (this.readyState === 4 && this.status === 200) {

var myArr = JSON.parse(this.responseText); // 将JSON字符串转换为数组

document.getElementById("output").innerHTML = myArr[0];

}

};

httpRequest.open("GET", "json_demo2.php", true);

httpRequest.send();测试看看‹/›

json_decode()函数

JSON字符串可以使用function转换为PHP对象json_decode()。

给定的文件由json_demo.php保存:<?php

$q = $_REQUEST["q"];  // 从URL获取q参数

$obj = json_decode($q, false); // 将JSON字符串转换为PHP对象

echo $obj->name." 居住在  ".$obj->city.".";

?>

以下示例将JavaScript对象转换为JSON字符串,并将其发送到服务器(demo_json.php):

示例var myObj = {name: "Seagull", age: 22, city: "New Delhi"};

var myJSON = JSON.stringify(myObj);

window.location = "json_demo.php?q=" + myJSON;测试看看‹/›

可以使用function将JSON字符串转换为PHP数组json_decode()。<?php

$q = $_REQUEST["q"];  //从URL获取q参数

$arr = json_decode($q, true); // 将JSON字符串转换为PHP数组

echo $arr["name"]." 居住在 ".$arr["city"].".";

?>

php request json,JSON PHP相关推荐

  1. java request get json数据_Java中,获取request中json数据

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 import java.io.IOException; import javax.servlet.http.HttpServletRequest; /** ...

  2. springmvc sends and receives data by ajax request using json format

    [0]README 1) springmvc sends or receives data by ajax request using json format; [1] ajax function & ...

  3. 获取request的json数组对象

    POST url HTTP/1.1 Content-Type: application/json [     {       "id": 36,       "name& ...

  4. C#中Newtonsoft.Json(Json.NET)的使用和处理json格式数据

    C#关于json的一些操作 C#中Newtonsoft.Json(Json.NET)的使用 添加Newtonsoft.Json.dll引用: 下载Newtonsoft.Json.dll: 在项目中添加 ...

  5. java 对象转json json转对象

    java 对象转json json转对象 import com.alibaba.fastjson.JSON;/*** * @title: fastjson * @author: wll* @since ...

  6. 报错解决:fatal error: json/json.h: No such file or directory

    晚上在做编译原理作业的时候遇到了报错: ASTNodes.h:6:23: fatal error: json/json.h: No such file or directory#include < ...

  7. 解决Ubuntu16.04 fatal error: json/json.h: No such file or directory

    参考博客 错误产生 安装json-c库之后,根据GitHub上面的readme文件链接到json-c库时出现以下错误: SDMBNJson.h:9:23: fatal error: json/json ...

  8. Newtonsoft.Json(Json.Net)学习笔记

    Newtonsoft.Json 在Vs2013中就有自带的: 下面是Json序列化和反序列化的简单封装: /// <summary>/// Json帮助类/// </summary& ...

  9. C/C++由字符串转JSON/JSON转字符串/数组解析/数组添加

    字符串转成JSON(其中str为字符串) 1 2 3 4 5 Json::Reader Reader; Json::Value DevJson; Reader.parse(str,DevJson); ...

  10. powershell /遍历/psobject/字符串转换Json/json数组操作

    读取json文档 $json = (Get-Content "C:\HDDList.json" -Raw) | ConvertFrom-Json $select=$json.Con ...

最新文章

  1. SDWebImage使用,图片加载和缓存
  2. DVWA系列之1 环境搭建
  3. [云炬创业基础笔记]第七张创业团队测试8
  4. 如何利用BAPI SD_SALESDOCUMENT_CHANGE修改Sales Order的字段
  5. react --- Hook的使用
  6. LPC2000 UART串口使用心得
  7. 女人,向《奋斗》中的夏琳米莱们学习什么
  8. 百度SEO站群PTCMS全自动采集小说网站源码
  9. 如何向iphone手机里导入音乐?
  10. 【记录】关于编码格式导致的中文乱码问题
  11. android屏幕旋转生命周期,Activity、Fragment生命周期---横竖屏切换的生命周期
  12. 【漏洞复现-EmpireCms-文件上传】vulfocus/empirecms-cve_2018_18086
  13. U3D游戏开发框架(四)——音频管理器
  14. systemview简介
  15. 说说香港银行开户的一些细节问题
  16. HJLF-E1 DC220V【反时限电流继电器】
  17. .Net 中使用依赖注入(DI)(一)
  18. JAVA计算机毕业设计南京新东方学校家校通系统(附源码、数据库)
  19. qt 复制字符串_Qt字符串处理 QString用法总结(二)
  20. w ndows7和CAD哪款兼容,win7与cad2008不兼容,cad2007和win7不兼容

热门文章

  1. 04-BTC-UTXO与挖矿
  2. 电脑屏幕上计算机闪烁有框,台式电脑屏幕闪烁原因及处理方法
  3. 又被zblogPHP交流群禁言了
  4. 【IDEA导出jar包】错误: 找不到或无法加载主类 com.xxx.xxx
  5. 微信公众号如何上传长图
  6. CollectionUtils属于哪个包
  7. 数据库服务器选购注意事项
  8. c#学习第16课,迭代(循环)语句 跳转语句
  9. python期权价格计算器_GitHub - jason88888/Options-Calculator: 期权价格计算器——金融工程第二次展示...
  10. Android 9无法通过反射获取系统属性