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一些有意思的小区别
Dec 06 PHP
PHP数据库调用类调用实例(详细注释)
Jul 12 PHP
PHP代码优化的53个细节
Mar 03 PHP
PHP中防止SQL注入方法详解
Dec 25 PHP
thinkphp备份数据库的方法分享
Jan 04 PHP
smarty内部日期函数html_select_date()用法实例分析
Jul 08 PHP
php根据日期显示所在星座的方法
Jul 13 PHP
PHP实现的多文件上传类及用法示例
May 06 PHP
PHP实现对二维数组某个键排序的方法
Sep 14 PHP
PHP实现用户登录的案例代码
May 10 PHP
关于Yii2框架跑脚本时内存泄漏问题的分析与解决
Dec 01 PHP
PHP中abstract(抽象)、final(最终)和static(静态)原理与用法详解
Jun 05 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
我的论坛源代码(三)
2006/10/09 PHP
PHP中register_globals参数为OFF和ON的区别(register_globals 使用详解)
2012/02/05 PHP
解析PHP将对象转换成数组的方法(兼容多维数组类型)
2013/06/21 PHP
PHP文件操作方法汇总
2015/07/01 PHP
PHP使用Pthread实现的多线程操作实例
2015/11/14 PHP
Laravel5.7 Eloquent ORM快速入门详解
2019/04/12 PHP
laravel实现于语言包的完美切换方法
2019/09/29 PHP
javascript之大字符串的连接的StringBuffer 类
2007/05/08 Javascript
js 中的switch表达式使用示例
2020/06/03 Javascript
javascript实现简单的省市区三级联动
2015/05/14 Javascript
Bootstrap实现响应式导航栏效果
2015/12/28 Javascript
Bootstrap编写一个同时适用于PC、平板、手机的登陆页面
2016/06/30 Javascript
关于Angularjs中跨域设置白名单问题
2018/04/17 Javascript
解决vue 打包发布去#和页面空白的问题
2018/09/04 Javascript
Node.js fs模块(文件模块)创建、删除目录(文件)读取写入文件流的方法
2019/09/03 Javascript
vue父组件给子组件的组件传值provide inject的方法
2019/10/23 Javascript
Vue实现移动端拖拽交换位置
2020/07/29 Javascript
vue 插槽简介及使用示例
2020/11/19 Vue.js
python控制台中实现进度条功能
2015/11/10 Python
浅谈python类属性的访问、设置和删除方法
2016/07/25 Python
在Python中调用Ping命令,批量IP的方法
2019/01/26 Python
python导入坐标点的具体操作
2019/05/10 Python
python中用logging实现日志滚动和过期日志删除功能
2019/08/20 Python
django 实现celery动态设置周期任务执行时间
2019/11/19 Python
Python 词典(Dict) 加载与保存示例
2019/12/06 Python
python中常见错误及解决方法
2020/06/21 Python
关于Kotlin中SAM转换的那些事
2020/09/15 Python
澳大利亚美容产品及化妆品在线:Activeskin
2020/06/03 全球购物
毕业生在校学习的自我评价分享
2013/10/08 职场文书
生物科学专业职业规划书范文
2014/02/11 职场文书
春节联欢会主持词
2014/03/24 职场文书
小班下学期个人总结
2015/02/12 职场文书
离婚被告答辩状
2015/05/22 职场文书
小学三年级数学教学反思
2016/02/16 职场文书
公司趣味运动会开幕词
2016/03/04 职场文书
详解Redis实现限流的三种方式
2021/04/27 Redis