`
445822357
  • 浏览: 738999 次
文章分类
社区版块
存档分类
最新评论

php数组转换js数组操作及json_encode应用

 
阅读更多
对于php,个人感觉能够熟练操作数组和字符串,基本上已经是入门了,php本身有很多操作数组和字符串的函数,
今天在做一个功能时,需要用Js动态的创建门店信息,这些信息是要从后台添加的,想来想去,通过php读取数据库
,得到数组,然后将数组转化成符合需求js数组,
php数组形式为:
$newArray = array(array('地区'=>'北京地区','items'=>'10','detail'=>array(0=>array('店名'=>'旗舰店','url'=>'http://www.'),1=>array('店名'=>'jjjj','url'=>'http://www.fdd'))),
                  array('地区'=>'上海地区','items'=>'11','detail'=>array(0=>array('店名'=>'旗舰店','url'=>'http://www.'),1=>array('店名'=>'jjjj','url'=>'http://www.fdd'))),
                 );

这里用的一个很方便的函数:json_encode();
var jsarray = new Array();
jsarray = <?php echo json_encode($newwarr);?>;
用console.log();可以看到jsarray的结构。

在这里如何构造这样一个符合要求的php数组呢?(我用的是phpcms系统)

    $sql= 'select catid,catname,items from category where parentid=10';
    $result = mysql_query($sql);
    while ($row = mysql_fetch_array($result)) {
    	$arrArea['地区'] = $row['catname'];
    	$arrArea['items'] = $row['items'];
    	unset($arrArea['detail']);//这一步很关键,要不得出的信息就会累加。
    	$sql2 = 'select title,url from news where catid='.$row['catid'];
    	$fendian = mysql_query($sql2);
    	while ($re=mysql_fetch_assoc($fendian)) {
    		$item['店名']=$re['title']; 
    		$item['url']=$re['url'];   
    		$arrArea['detail'][] = $item;	
    	}
    	$newwarr[]=$arrArea;
    }    
    var_dump($newwarr);
json_encode:对变量进行 JSON 编码,该函数只能接受 UTF-8编码的数据 .

相对应的还有json_decode,第二个参数为true,返回数组,执行相逆的过程。

json只能用对象和数组。



分享到:
评论

相关推荐

    php数组转换js数组操作及json_encode的用法详解

    php数组转换js数组操作及json_encode的用法。需要的朋友可以过来参考下,希望对大家有所帮助

    php json_encode与json_decode详解及实例

    先看一个数组转换的例子: $arr = array ('a'=&gt;1,'b'=&gt;2,'c'=&gt;3,'d'=&gt;4,'e'=&gt;5);  echo json_encode($arr);  结果为 {"a":1,"b":2,"c":3,"d":4,"e":5}  再看一个对象转换的例子: $obj-&gt;body = 'another post...

    php使用json_encode对变量json编码

    在 ajax 横行的今天,json 顺理成章地成为了前后端...当 JavaScript 请求到上面的代码,PHP 将解析数组 $a 为 json 字符串并返回到前端,但事实上在前端拿到的返回结果却是一个数组。复制代码 代码如下:[ “Jack” , 

    php让json_encode不自动转义斜杠“/”的方法

    后来发现在默认的情况之下使用 json_encode 对数组进行 json 格式的转换时候会自动的将数据中含有斜杠的字符串进行转义,但是我们往往有的时候不需要药对它们进行转义的,本文说说如何使用 json_encode 不自动转义...

    浅析php中json_encode()和json_decode()

    该函数主要用来将数组和对象,转换为json格式。 复制代码 代码如下:$arr = array (‘a’=&gt;’a’,’b’=&gt;’b’,’c’=’c’,’d’=&gt;’d’,’e’=’e’);echo json_encode($arr); 输出结果: json只接受utf-8编码的...

    php中json_encode UTF-8中文乱码的更好解决方法

    最近在接口代码当中用到过json_encode,在网上找到说json_encode编码设置为UTF-8中文就不会乱码,经验证这办法确实是有效果的,但是不知道为什么,代码在用过一段时间之后就不太管用了。以下是自己的解决json_encode...

    PHP中让json_encode不自动转义斜杠“/”的方法

    后来发现在默认的情况之下使用 json_encode 对数组进行 json 格式的转换时候会自动的将数据中含有斜杠的字符串进行转义,但是我们往往有的时候不需要药对它们进行转义的,本文说说如何使用 json_encode 不自动转义...

    php实现数组中索引关联数据转换成json对象的方法

    本文实例讲述了php实现数组中索引关联数据转换成json对象的方法。分享给大家供大家参考。具体实现方法如下: public static function encode(&$var) { return '{'.implode(',',self::encodeExcute($var)).'}'; } ...

    Simple-Json-PHP:适用于PHP的简单JSON使您能够伪造一个PHP对象并将其转换为Json以使用JSON API

    快速:JSON使用本地json_encode()进行编码可靠:标头是自动发送的完成:您可以添加对象,属性或数组回调/变量或只是JSON选项兼容JSONP 兼容jQuery 缺点: 针对对象进行了优化,因为JSON是对象表示法。用法&lt;?...

    php多层数组与对象的转换实例代码

    通过json_decode(json_encode($object)可以将对象一次性转换为数组,但是object中遇到非utf-8编码的非ascii字符则会出现问题,比如gbk的中文,何况json_encode和decode的性能也值得疑虑。下面上代码:复制代码 代码...

    php语言中使用json的技巧及json的实现代码详解

    目前,JSON已经成为最流行的数据交换格式之一,各大网站的API几乎都支持它。 我写过一篇《数据类型和JSON格式》,...先看一个数组转换的例子: $arr = array ('a'=&gt;1,'b'=&gt;2,'c'=&gt;3,'d'=&gt;4,'e'=&gt;5); echo json_encode

    详解json在php中的应用

    先看一个数组转换的例子: $arr = array ('a'=&gt;1,'b'=&gt;2,'c'=&gt;3,'d'=&gt;4,'e'=&gt;5);  echo json_encode($arr); 结果为:{“a”:1,”b”:2,”c”:3,”d”:4,”e”:5}  再看一个对象转换的例子: $obj-&gt;body = '...

    如何在php中正确的使用json

    先看一个数组转换的例子:$arr = array (‘a’=&gt;1,’b’=&gt;2,’c’=&gt;3,’d’=&gt;4,’e’=&gt;5);echo json_encode($arr); 上面代码的输出结果为:{“a”:1,”b”:2,”c”:3,”d”:4,”e”:5} 再看一个对象转换的例子:复制...

    在PHP语言中使用JSON和将json还原成数组的方法

    从5.2版本开始,PHP原生提供json_encode()和json_decode()函数,前者用于编码,后者用于解码。 一、json_encode() &lt;?php $arr = array ('a'=&gt;1,'b'=&gt;2,'c'=&gt;3,'d'=&gt;4,'e'=&gt;5); echo json_encode($arr); ?&gt; ...

    PHP使用JSON和将json还原成数组

    从5.2版本开始,PHP原生提供json_encode()和json_decode()函数,前者用于编码,后者用于解码。 一、json_encode() 复制代码 代码如下: &lt;?php $arr = array (‘a’=&gt;1,’b’=&gt;2,’c’=&gt;3,’d’=&gt;4,’e’=&gt;5); echo...

    php 将json格式数据转换成数组的方法

    如下所示: //json格式数据 $data = '[{ F_ModuleId: 1, F_ParentId: 0, F_EnCode: SysManage,}]'; //转换成数组 ... 您可能感兴趣的文章:php curl获取到json对象并转成数组array的方法php实现数组中索引

    php json转换相关知识(小结)

    最近在查找一个bug的时候,发现前端传过来的json空对象 {} ,被php转换成了空数组 [] 存到了数据库里面, 读取并返回给前端的时候,没有做特殊处理,返回了 [] 给前端,导致一些问题。 所以决定梳理一下php的json转换...

    php将从数据库中获得的数据转换成json格式并输出的方法

    如下所示: header('content-type:application/json;charset=utf8'); $results = array(); while ($row = mysql_fetch_assoc($result_query)) { ...以上这篇php将从数据库中获得的数据转换成json格

Global site tag (gtag.js) - Google Analytics