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 相关文章推荐
收集的PHP中与数组相关的函数
Mar 22 PHP
php生成缩略图的类代码
Oct 02 PHP
php在项目中寻找代码的坏味道(综艺命名)
Jul 19 PHP
php中数组首字符过滤功能代码
Jul 31 PHP
浅析php中抽象类和接口的概念以及区别
Jun 27 PHP
php5.3以后的版本连接sqlserver2000的方法
Jul 28 PHP
WordPress中给媒体文件添加分类和标签的PHP功能实现
Dec 31 PHP
Yii使用DeleteAll连表删除出现报错问题的解决方法
Jul 14 PHP
php foreach如何跳出两层循环(详解)
Nov 05 PHP
解决Laravel自定义类引入和命名空间的问题
Oct 15 PHP
PHP实现创建一个RPC服务操作示例
Feb 23 PHP
phpquery中文手册
Mar 18 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
实例(Smarty+FCKeditor新闻系统)
2007/01/02 PHP
php is_file 判断给定文件名是否为一个正常的文件
2010/05/10 PHP
php列出一个目录下的所有文件的代码
2012/10/09 PHP
CodeIgniter钩子用法实例详解
2016/01/20 PHP
PHP闭包函数详解
2016/02/13 PHP
简单实现php上传文件功能
2017/09/21 PHP
认识延迟时间为0的setTimeout
2008/05/16 Javascript
javascript转换字符串为dom对象(字符串动态创建dom)
2010/05/10 Javascript
jQueryUI如何自定义组件实现代码
2010/11/14 Javascript
关于jquery input textare 事件绑定及用法学习
2013/04/03 Javascript
用显卡加速,轻松把笔记本打造成取暖器的办法!
2013/04/17 Javascript
JavaScript实现简单的数字倒计时
2015/05/15 Javascript
Node.js+Express配置入门教程
2016/05/19 Javascript
javascript动画之模拟拖拽效果篇
2016/09/26 Javascript
jQuery实现的简单图片轮播效果完整示例
2018/02/08 jQuery
JS实现HTML页面中动态显示当前时间完整示例
2018/07/30 Javascript
在axios中使用params传参的时候传入数组的方法
2018/09/25 Javascript
小谈angular ng deploy的实现
2020/04/07 Javascript
[01:13:18]Secret vs Infamous 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.23
2019/09/05 DOTA
在Python中使用成员运算符的示例
2015/05/13 Python
Django imgareaselect手动剪切头像实现方法
2015/05/26 Python
Python数据类型详解(三)元祖:tuple
2016/05/08 Python
Pytoch之torchvision.transforms图像变换实例
2019/12/30 Python
python用TensorFlow做图像识别的实现
2020/04/21 Python
如何在Python3中使用telnetlib模块连接网络设备
2020/09/21 Python
Django数据库迁移常见使用方法
2020/11/12 Python
利用Python函数实现一个万历表完整示例
2021/01/23 Python
MANGO官方网站:西班牙芒果服装品牌
2017/01/15 全球购物
英国安全产品购物网站:The Safe Shop
2017/03/20 全球购物
读书演讲主持词
2014/03/18 职场文书
授权委托书格式
2014/07/31 职场文书
教师四风自我剖析材料
2014/09/30 职场文书
如何用Node.js编写内存效率高的应用程序
2021/04/30 Javascript
Python基础学习之奇异的GUI对话框
2021/05/27 Python
通过Python把学姐照片做成拼图游戏
2022/02/15 Python
BCL经典机 SONY ICF-5900W电路分析
2022/04/24 无线电