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 相关文章推荐
从C/C++迁移到PHP——判断字符类型的函数
Oct 09 PHP
php 404错误页面实现代码
Jun 22 PHP
PHP 批量更新网页内容实现代码
Jan 05 PHP
PHP 日志缩略名的创建函数代码
May 26 PHP
一个简洁的PHP可逆加密函数(分享)
Jun 06 PHP
ThinkPHP实例化模型的四种方法概述
Aug 22 PHP
Yii针对添加行的增删改查操作示例
Oct 18 PHP
微信公众平台开发-微信服务器IP接口实例(含源码)
Mar 05 PHP
PHP基于PDO实现的SQLite操作类【包含增删改查及事务等操作】
Jun 21 PHP
PHP实现Huffman编码/解码的示例代码
Apr 20 PHP
php实现的表单验证类完整示例
Aug 13 PHP
PHP实现基本留言板功能原理与步骤详解
Mar 26 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查询并删除数据库多列重复数据的方法(利用数组函数实现)
2016/02/23 PHP
PHP静态延迟绑定和普通静态效率的对比
2017/10/20 PHP
php实现session共享的实例方法
2019/09/19 PHP
js 页面输出值
2008/11/30 Javascript
javascript基础知识大集锦(一) 推荐收藏
2011/01/13 Javascript
JavaScript中的几个关键概念的理解-原型链的构建
2011/05/12 Javascript
使用Jquery实现点击文字后变成文本框且可修改
2013/09/21 Javascript
使用Jquery获取带特殊符号的ID 标签的方法
2014/04/30 Javascript
JavaScript验证18位身份证号码最后一位正确性的实现代码
2014/08/07 Javascript
javascript包装对象实例分析
2015/03/27 Javascript
jQuery 插件封装的方法
2016/11/16 Javascript
JavaScript实现经典排序算法之插入排序
2016/12/28 Javascript
jQuery滚动监听实现商城楼梯式导航效果
2017/03/06 Javascript
jQuery封装animate.css的实例
2018/01/04 jQuery
vue父组件异步获取数据传给子组件的方法
2018/07/26 Javascript
微信小程序自定义轮播图
2018/11/04 Javascript
Vue组件系列开发之模态框
2019/04/18 Javascript
javaScript中indexOf用法技巧
2019/11/26 Javascript
微信小程序wxml列表渲染原理解析
2019/11/27 Javascript
JS实现商品橱窗特效
2020/01/09 Javascript
原生javascript实现类似vue的数据绑定功能示例【观察者模式】
2020/02/24 Javascript
js实现树形数据转成扁平数据的方法示例
2020/02/27 Javascript
vue 如何使用递归组件
2020/10/23 Javascript
用python实现面向对像的ASP程序实例
2014/11/10 Python
使用pyecharts无法import Bar的解决方案
2020/04/23 Python
python实现Windows电脑定时关机
2018/06/20 Python
Python将list中的string批量转化成int/float的方法
2018/06/26 Python
python实现剪切功能
2019/01/23 Python
css3选择器基本介绍
2014/12/15 HTML / CSS
CSS3实现淘宝留白的方法
2020/06/05 HTML / CSS
香港彩色隐形眼镜在线商店:Stunninglens(全球免费送货)
2019/05/10 全球购物
2014年两会学习心得体会
2014/03/17 职场文书
中小学生学籍证明
2014/10/25 职场文书
委托书格式要求
2015/01/28 职场文书
使用CSS3实现按钮悬停闪烁动态特效代码
2021/08/30 HTML / CSS
CSS精灵图的原理与使用方法介绍
2022/03/17 HTML / CSS