php返回json数据函数实例


Posted in PHP onOctober 09, 2014

本文实例讲述了php返回json数据函数的用法,分享给大家供大家参考。具体方法如下:

json_encode()函数用法:

echo json_encode(array('a'=>'bbbb','c'=>'ddddd');

这样就会生成一个标准的json格式的数据

<?php
//需要执行的SQL语句
//单条
$sql="select id,name from tbl_user where id=1";
//多条数据
//$sql="select id,name from tbl_user";
//调用conn.php文件进行数据库操作 
require('Conn.php');
//提示操作成功信息,注意:$result存在于conn.php文件中,被调用出来 
if($result) 
{
// $array=mysql_fetch_array($result,MYSQL_ASSOC);
 
 
 /*数据集
 $users=array();
 $i=0;
 while($row=mysql_fetch_array($result,MYSQL_ASSOC)){
 echo $row['id'].'-----------'.$row['name'].'</br>';
 $users[$i]=$row;
 $i++;
 }
 echo json_encode(array('dataList'=>$users));
 */
 /*单条数据*/
 $row=mysql_fetch_row($result,MYSQL_ASSOC);
 
 echo json_encode(array('jsonObj'=>$row));
}
mysql_free_result($result);
//释放结果
mysql_close();
//关闭连接
?>

上面是数据库生成json数据
单条数据:{"jsonObj":{"id":"1","name":"lmw"}}
多条数据:{"dataList":[{"id":"1","name":"lmw"},{"id":"2","name":"xxj"},{"id":"3","name":"xxxj"}]}

现在很多情况下,我们需要程序返回一个Json格式的结果,比如:

{
"UserKeyGetResponse":
{"RequestName":"e99e6d63e8c712d7699f52978a","api_key_value":"41954dd9b1cb6a95802eab6810"},
"error_response":
{"code":"NO_ERROR","msg":"获取系统参数成功"}
}
可以将结果写成这样的数组形式:
$respon = array('UserKeyGetResponse' => array('RequestName' => $api_request_name, 'api_key_value' => $api_key_value),
'error_response' => array('code' => 'NO_ERROR', 'msg' => '获取系统参数成功'));

代码如下:

function arrayRecursive(&$array, $function, $apply_to_keys_also = false)
{
 static $recursive_counter = 0;
 if (++$recursive_counter > 1000) {
  die('possible deep recursion attack');
 }
 foreach ($array as $key => $value) {
  if (is_array($value)) {
   arrayRecursive($array[$key], $function, $apply_to_keys_also);
  } else {
   $array[$key] = $function($value);
  }
  if ($apply_to_keys_also && is_string($key)) {
   $new_key = $function($key);
   if ($new_key != $key) {
    $array[$new_key] = $array[$key];
    unset($array[$key]);
   }
  }
 }
 $recursive_counter--;
}
g:
$error_respon = array('code' => 'ERROR_MSG_MISS', 'msg' => '消息不存在');
echo JSON($array);

运行结果为:

{"code":"ERROR_MSG_MISS","msg":"消息不存在"}

客户端就可以解析这个结果了,当然错误码要用数字代替。
这样就好多了我们显示的直接是中文了,当然显示那个16进制的编码也是没有问题的。

PHP 相关文章推荐
一道关于php变量引用的面试题
Aug 08 PHP
php采用curl实现伪造IP来源的方法
Nov 21 PHP
PHP中使用socket方式GET、POST数据实例
Apr 02 PHP
PHP Streams(流)详细介绍及使用
May 12 PHP
php 批量查询搜狗sogou代码分享
May 17 PHP
WordPress中查询文章的循环Loop结构及用法分析
Dec 17 PHP
PHP中new static()与new self()的比较
Aug 19 PHP
php获得文件夹下所有文件的递归算法的简单实例
Nov 01 PHP
PHP在linux上执行外部命令的方法
Feb 06 PHP
php面向对象的用户登录身份验证
Jun 08 PHP
PHP获取日期对应星期、一周日期、星期开始与结束日期的方法
Jun 22 PHP
PHP日志LOG类定义与用法示例
Sep 06 PHP
php常用的安全过滤函数集锦
Oct 09 #PHP
自定义session存储机制避免会话保持问题
Oct 08 #PHP
PHP定时任务延缓执行的实现
Oct 08 #PHP
在Win7 中为php扩展配置Xcache
Oct 08 #PHP
在win7中搭建Linux+PHP 开发环境
Oct 08 #PHP
两千行代码的PHP学习笔记汇总
Oct 05 #PHP
PHP实现定时执行任务的方法
Oct 05 #PHP
You might like
php为什么选mysql作为数据库? Mysql 创建用户方法
2007/07/02 PHP
php检查日期函数checkdate用法实例
2015/03/19 PHP
PHP内核探索之解释器的执行过程
2015/12/22 PHP
PHP设计模式之工厂方法设计模式实例分析
2018/04/25 PHP
JQuery判断子iframe何时加载完成解决方案
2013/08/20 Javascript
jquery新的绑定事件机制on方法的使用方法
2014/04/15 Javascript
输入框过滤非数字的js代码
2014/09/18 Javascript
iPhone手机上搭建nodejs服务器步骤方法
2015/07/06 NodeJs
Bootstrap表单使用方法详解
2017/02/17 Javascript
完美解决input[type=number]无法显示非数字字符的问题
2017/02/28 Javascript
VUE开发一个图片轮播的组件示例代码
2017/03/06 Javascript
AngularJS实现表格的增删改查(仅限前端)
2017/07/04 Javascript
ES6解构赋值的功能与用途实例分析
2017/10/31 Javascript
微信小程序的mpvue框架快速上手指南
2019/05/15 Javascript
详解Vue.js 作用域、slot用法(单个slot、具名slot)
2019/10/15 Javascript
[41:52]2018DOTA2亚洲邀请赛3月29日小组赛B组Effect VS Secret
2018/03/30 DOTA
[58:21]DOTA2亚洲邀请赛 4.3 突围赛 Liquid vs VGJ.T 第二场
2018/04/04 DOTA
python 读写、创建 文件的方法(必看)
2016/09/12 Python
Python中 map()函数的用法详解
2018/07/10 Python
解决tensorflow测试模型时NotFoundError错误的问题
2018/07/26 Python
在python中以相同顺序shuffle两个list的方法
2018/12/13 Python
python实现一个点绕另一个点旋转后的坐标
2019/12/04 Python
pytorch 实现将自己的图片数据处理成可以训练的图片类型
2020/01/08 Python
解决pycharm导入本地py文件时,模块下方出现红色波浪线的问题
2020/06/01 Python
Django中F函数的使用示例代码详解
2020/07/06 Python
Canvas图片分割效果的实现
2019/07/29 HTML / CSS
铭宣海淘转运:美国、日本、英国转运等全球转运公司
2019/09/10 全球购物
Ashford台湾:以折扣价提供奢华的男女用表款
2019/12/04 全球购物
班主任经验交流会主持词
2014/04/01 职场文书
《路旁的橡树》教学反思
2014/04/07 职场文书
爱心捐款倡议书
2014/04/14 职场文书
党员评议思想汇报
2014/10/08 职场文书
部队2015年终工作总结
2015/04/02 职场文书
2016年小学党支部创先争优活动总结
2016/04/05 职场文书
python基础学习之生成器与文件系统知识总结
2021/05/25 Python
阿里云国际版 使用Nginx作为HTTPS转发代理服务器
2022/05/11 Servers