php中解析数组,在PHP中解析多维数组
您应该在将数据解析为Smarty之前准备好数据。
你可以这样做:
$result = array(
array('name' => 'Hockey Team 1', 'category_id' => 1),
array('name' => 'Hockey Team 2', 'category_id' => 2),
array('name' => 'Hockey Team 3', 'category_id' => 3),
array('name' => 'Football Team 1', 'category_id' => 4),
array('name' => 'Football Team 2', 'category_id' => 5),
array('name' => 'Football Team 3', 'category_id' => 6)
);
$sports = array();
foreach ($result as $team) {
$sport_parts = explode(' ', $team['name']);
$sport = array_shift($sport_part);
$team['name'] = join(' ', $sport_parts);
if (isset($sports[$sport]) === FALSE) {
$sports[$sport] = array();
}
$sports[$sport][] = $team;
}这将产生这样的数据集,很容易在Smarty中迭代:
array(2) {
["Hockey"]=>
array(3) {
[0]=>
array(2) {
["name"]=>
string(13) "Team 1"
["category_id"]=>
int(1)
}
[1]=>
array(2) {
["name"]=>
string(13) "Team 2"
["category_id"]=>
int(2)
}
[2]=>
array(2) {
["name"]=>
string(13) "Team 3"
["category_id"]=>
int(3)
}
}
["Football"]=>
array(3) {
[0]=>
array(2) {
["name"]=>
string(15) "Team 1"
["category_id"]=>
int(4)
}
[1]=>
array(2) {
["name"]=>
string(15) "Team 2"
["category_id"]=>
int(5)
}
[2]=>
array(2) {
["name"]=>
string(15) "Team 3"
["category_id"]=>
int(6)
}
}
}Smarty模板的一个例子:
{foreach from=$sports key=sport item=teams}
{$sport}
{foreach from=$teams item=team}
{$team['name']}
{/foreach}
{/foreach}
php中解析数组,在PHP中解析多维数组相关推荐
- php某列为键数组为值,PHP 将二维数组中某列值作为数组的键名 -- 超实用
有时候,想通过数组的中某字段值, 然后再在二维数组中获取存在该字段值的数组: 一般能想到的就是foreach 遍历比较一下跟该字段值一样,就获取到想要的数组,如下: //测试二维数组 $arr =ar ...
- c语言二维数组中的周边,【C语言】二维数组中的查找,杨氏矩阵
//二维数组中的查找,杨氏矩阵 //在一个二维数组中,每行都依照从左到右的递增的顺序排序.每列都依照从上到下递增的顺序排序. //请完毕一个函数.输入这种一个数组和一个数,推断数组中是否包括这个数. ...
- 算法013:二维数组中的查找-在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断中是否存在
题目:在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数.示例: 现有 ...
- 《c primer pius》第十章第6题,编写一个程序,初始化一个二维double数组,并利用练习2中的任一函数来把这个数组复制到另一个二维数组(因为二维数组是数组的数组,所以可以使用处理一维数组的
<c primer pius>第十章第6题,编写一个程序,初始化一个二维double数组,并利用练习2中的任一函数来把这个数组复制到另一个二维数组(因为二维数组是数组的数组,所以可以使用处 ...
- C语言求二维数组平均数,一道JavaScript的二维数组求平均数的题
JavaScript中只支持一维数组,但是可以在数组中嵌套数组来创建二维以至于多维的数组.今天下午在看书时候,发现一道感觉比较有意思的题,就是js中如何求二维数组的列之和和行之和,现在就给大家分享下, ...
- python 二维数组心得_基于python 二维数组及画图的实例详解
python中如何使用二维数组 在Python中,一个像这样的多维表格可以通过"序列的序列"实现.一个表格是行的序列.每一行又是独立单元格的序列.这类似于小编们使用的数学记号,在数 ...
- c语言二维数组表示坐标,c语言多维数组地址的表示方法
c语言多维数组地址的表示方法 导语:我们知道数组名就是指针常量.下面让我们了解一下多维数组的地址表现方法. 设有整型二维数组a[3][4]如下: 0 1 2 3 4 5 6 7 8 9 10 11 设 ...
- 二维数组和指针(包含交换二维数组行列)
有必要对a[i]的性质作进一步说明.a[i]从形式上看是a数组中的第i个元素.如果a是一维数组名,则a[i]代表a数组第i个元素所占的内存单元的内容.a[i]是有物理地址的,是占内存单元的.但如果a是 ...
- C语言基础入门48篇_30_二维数组的定义与使用(二维数组的定义:type 数组名[行][列]、二维数组的初始化、二维数组的引用)
1. 二维数组的定义 type 数组名[行][列] 2. 二维数组的初始化 2.1 全部初始化为0 char chAry[2][3] = { 0 }; 实例: #include <stdio.h ...
- 数据结构(C)必会知识点+易错点:数组和广义表(n维数组地址计算公式,特殊矩阵对称矩阵的存储,广义表的表示方法)
一,n维数组地址计算公式 ji表示n维数组中该元素在第i维中的坐标 ai表示n维数组中第i维的起始坐标 bi表示第i维度的长度 L表示一个元素所占的字节数 LOC(-)表示该坐标对应的存储中的地址(一 ...
最新文章
- elementUI 写一个表头列名、表体单元格样式、翻页器相对较为动态的表格el-table
- HK二分图最大匹配算法模板
- 解决vc6.0卡死的方法
- Oracle查询优化-04插入、更新与删除数据
- 天翼云从业认证(3.3)天翼云网络产品
- 【C++】Visual studio样式定制
- ldap配置系列二:jenkins集成ldap
- 【Python】list tuple
- iOS App 调用QQ客户端,发起临时会话
- 公式冒号是什么意思_excel函数公式中的:号是什么意思
- 「第六篇」0day漏洞
- 三合一收款二维码原理以及源码
- 用python对我和女票的聊天记录生成心形词云
- 微信小程序开发测试appId如何改为真正的appid
- CC00051.elasticsearch——|HadoopElasticSearch.V03|——|ELK.v03Logstash部署.V3|
- 梦中情盘!基于NextCloud搭建个人私有云!
- Mac双系统Win10系统安装MySQL的坑
- 6D 位姿估计 位姿测量 常用方法总结 (适用于单目标场景)
- 【存储】文件存储、块存储、对象存储的区别
- 西门子PLC产生随机数
热门文章
- 百年难得一见!阿里园区惊现双月争辉奇观!
- C# 多线程 Parallel.For 和 For 谁的效率高?那么 Parallel.ForEach 和 ForEach 呢?
- Chrome指令/追踪Http请求相关
- 《众妙之门——网页排版设计制胜秘诀》——3.4 展现品牌视觉的同时保持网页的可读性...
- wxWidgets之wxGrid控件
- MYSQL的全表扫描,主键索引(聚集索引、第一索引),非主键索引(非聚集索引、第二索引),覆盖索引四种不同查询的分析...
- Java高级篇 -- List选择及优化
- KUKA 声明变量时的几点注意
- 学习笔记(34):Python网络编程并发编程-异步调用与回调机制
- C++ STL实现的优先队列( priority_queue )