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


Posted in PHP onOctober 26, 2013

对于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 相关文章推荐
Drupal 添加模块出现莫名其妙的错误的解决方法(往往出现在模块较多时)
Apr 18 PHP
php数组的一些常见操作汇总
Jul 17 PHP
php 文本文件的读取效率
Feb 10 PHP
PHP定时更新程序设计思路分享
Jun 10 PHP
php中instanceof 与 is_a()区别分析
Mar 03 PHP
php二维数组合并及去重复的方法
Mar 04 PHP
Linux+Nginx+MySQL下配置论坛程序Discuz的基本教程
Dec 23 PHP
php文件缓存方法总结
Mar 16 PHP
Yii2主题(Theme)用法详解
Jul 23 PHP
PHP上传图片、删除图片简单实例
Nov 12 PHP
浅析PHP 中move_uploaded_file 上传中文文件名失败
Apr 17 PHP
goto语法在PHP中的使用教程
Sep 17 PHP
php while循环得到循环次数
Oct 26 #PHP
php中OR与|| AND与&amp;&amp;的区别总结
Oct 26 #PHP
php中的PHP_EOL换行符详细解析
Oct 26 #PHP
一个简单且很好用的php分页类
Oct 26 #PHP
PHP中VC6、VC9、TS、NTS版本的区别与用法详解
Oct 26 #PHP
zend optimizer在wamp的基础上安装图文教程
Oct 26 #PHP
php批量更改数据库表前缀实现方法
Oct 26 #PHP
You might like
php代码书写习惯优化小结
2013/06/20 PHP
php中的静态变量的基本用法
2014/03/20 PHP
使用PHP访问RabbitMQ消息队列的方法示例
2018/06/06 PHP
php多进程并发编程防止出现僵尸进程的方法分析
2020/02/28 PHP
js实现iframe动态调整高度的代码
2008/01/06 Javascript
JS OffsetParent属性深入解析
2014/01/13 Javascript
JS实现单行文字不间断向上滚动的方法
2015/01/29 Javascript
jQuery插件实现图片轮播特效
2016/06/16 Javascript
简洁实用的BootStrap jQuery手风琴插件
2016/08/31 Javascript
原生JS实现九宫格抽奖效果
2017/04/01 Javascript
vue引入ueditor及node后台配置详解
2018/01/03 Javascript
使用webpack和rollup打包组件库的方法
2021/02/25 Javascript
Python实现快速多线程ping的方法
2015/07/15 Python
Python实现SSH远程登陆,并执行命令的方法(分享)
2017/05/08 Python
Python+matplotlib+numpy实现在不同平面的二维条形图
2018/01/02 Python
linecache模块加载和缓存文件内容详解
2018/01/11 Python
详谈在flask中使用jsonify和json.dumps的区别
2018/03/26 Python
python获取指定字符串中重复模式最高的字符串方法
2018/06/29 Python
Python在cmd上打印彩色文字实现过程详解
2019/08/07 Python
如何更改 pandas dataframe 中两列的位置
2019/12/27 Python
浅谈OpenCV中的新函数connectedComponentsWithStats用法
2020/07/05 Python
学python爬虫能做什么
2020/07/29 Python
详解pyqt5的UI中嵌入matplotlib图形并实时刷新(挖坑和填坑)
2020/08/07 Python
详解Html5页面实现下载文件(apk、txt等)的三种方式
2018/10/22 HTML / CSS
意大利体育用品和运动服网上商店:Maxi Sport
2019/09/14 全球购物
马来西亚在线药房:RoyalePharma
2019/12/01 全球购物
计算机开发个人求职信范文
2013/09/26 职场文书
大学生四年生活自我鉴定
2013/11/21 职场文书
先进个人获奖感言
2014/01/24 职场文书
《藏戏》教学反思
2014/02/11 职场文书
志愿者活动总结
2014/04/28 职场文书
农行心得体会
2014/09/02 职场文书
见习报告格式范文
2014/11/08 职场文书
感恩母亲节活动总结
2015/02/10 职场文书
心灵点滴观后感
2015/06/02 职场文书
六五普法心得体会2016
2016/01/21 职场文书