php数组转成json格式的方法


Posted in PHP onMarch 09, 2015

本文实例讲述了php数组转成json格式的方法。分享给大家供大家参考。具体实现方法如下:

function array_to_json( $array ){

    if( !is_array( $array ) ){

        return false;

    }

    $associative = count( array_diff( array_keys($array), array_keys( array_keys( $array )) ));

    if( $associative ){

        $construct = array();

        foreach( $array as $key => $value ){

            // We first copy each key/value pair into a staging array,

            // formatting each key and value properly as we go.

            // Format the key:

            if( is_numeric($key) ){

                $key = "key_$key";

            }

            $key = "'".addslashes($key)."'";

            // Format the value:

            if( is_array( $value )){

                $value = array_to_json( $value );

            } else if( !is_numeric( $value ) || is_string( $value ) ){

                $value = "'".addslashes($value)."'";

            }

            // Add to staging array:

            $construct[] = "$key: $value";

        }

        // Then we collapse the staging array into the JSON form:

        $result = "{ " . implode( ", ", $construct ) . " }";

    } else { // If the array is a vector (not associative):

        $construct = array();

        foreach( $array as $value ){

            // Format the value:

            if( is_array( $value )){

                $value = array_to_json( $value );

            } else if( !is_numeric( $value ) || is_string( $value ) ){

                $value = "'".addslashes($value)."'";

            }

            // Add to staging array:

            $construct[] = $value;

        }

        // Then we collapse the staging array into the JSON form:

        $result = "[ " . implode( ", ", $construct ) . " ]";

    }

    return $result;

}

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
PHP版自动生成文章摘要
Jul 23 PHP
在VS2008中编译MYSQL5.1.48的方法
Jul 03 PHP
解析PHP跳出循环的方法以及continue、break、exit的区别介绍
Jul 01 PHP
使用PHP curl模拟浏览器抓取网站信息
Oct 28 PHP
PHP is_subclass_of函数的一个BUG和解决方法
Jun 01 PHP
制作安全性高的PHP网站的几个实用要点
Dec 30 PHP
php绘图之生成饼状图的方法
Jan 24 PHP
php字符串函数学习之substr()
Mar 27 PHP
PHP中的静态变量及static静态变量使用详解
Nov 05 PHP
php抽奖概率算法(刮刮卡,大转盘)
Apr 17 PHP
PHP 二维关联数组根据其中一个字段排序(推荐)
Apr 04 PHP
分享5个非常有用的Laravel Blade指令
May 30 PHP
php实现将数组转换为XML的方法
Mar 09 #PHP
php返回字符串中所有单词的方法
Mar 09 #PHP
php通过正则表达式记取数据来读取xml的方法
Mar 09 #PHP
PHP实现算式验证码和汉字验证码实例
Mar 09 #PHP
PHP实现指定字段的多维数组排序函数分享
Mar 09 #PHP
PHP多线程之内部多线程实例分析
Mar 09 #PHP
php中删除数组的第一个元素和最后一个元素的函数
Mar 07 #PHP
You might like
php异常处理技术,顶级异常处理器
2012/06/13 PHP
php内存缓存实现方法
2015/01/24 PHP
php使用for语句输出三角形的方法
2015/06/09 PHP
php5.3/5.4/5.5/5.6/7常见新增特性汇总整理
2020/02/27 PHP
JQuery实现倒计时按钮具体方法
2013/11/14 Javascript
select多选 multiple的使用示例
2014/06/16 Javascript
浅谈jquery的html方法里包含特殊字符的处理
2016/11/30 Javascript
全面解析jQuery中的$(window)与$(document)的用法区别
2017/08/15 jQuery
Vue ElementUI之Form表单验证遇到的问题
2017/08/21 Javascript
jquery select插件异步实时搜索实例代码
2017/10/20 jQuery
动态加载、移除js/css文件的示例代码
2018/03/20 Javascript
Vue 设置axios请求格式为form-data的操作步骤
2019/10/29 Javascript
vue打开子组件弹窗都刷新功能的实现
2020/09/21 Javascript
python模块之time模块(实例讲解)
2017/09/13 Python
python pandas移动窗口函数rolling的用法
2020/02/29 Python
CSS3的 fit-content实现水平居中
2017/09/07 HTML / CSS
LA MER海蓝之谜美国官网:传奇面霜
2016/08/27 全球购物
加拿大女包品牌:Matt & Nat
2017/05/12 全球购物
英国最大的海报商店:GB Posters
2018/03/20 全球购物
美国值得信赖的婚恋交友网站:eHarmony
2018/10/04 全球购物
最好的商品表达自己:Cafepress
2019/09/04 全球购物
开发中都用到了那些设计模式?用在什么场合?
2014/08/21 面试题
介绍一下Java的安全机制
2012/06/28 面试题
将一个文本文件的内容按倒序打印出来
2015/01/05 面试题
销售演讲稿范文
2014/01/08 职场文书
鲜果饮品店创业计划书
2014/01/21 职场文书
2014年国庆节演讲稿
2014/09/02 职场文书
学习党的群众路线实践活动思想汇报
2014/09/12 职场文书
2014乡镇党委副书记对照检查材料思想汇报
2014/10/09 职场文书
党的群众路线教育实践活动学习笔记
2014/11/05 职场文书
学校清洁工岗位职责
2015/04/15 职场文书
单身证明格式样本
2015/06/15 职场文书
《地震中的父与子》教学反思
2016/02/16 职场文书
致男子1500米运动员的广播稿
2019/11/08 职场文书
详解CSS3.0(Cascading Style Sheet) 层叠级联样式表
2021/07/16 HTML / CSS
使用MybatisPlus打印sql语句
2022/04/22 SQL Server