php中解析数组,在PHP中解析多维数组
您應(yīng)該在將數(shù)據(jù)解析為Smarty之前準(zhǔn)備好數(shù)據(jù)。
你可以這樣做:
$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;
}這將產(chǎn)生這樣的數(shù)據(jù)集,很容易在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模板的一個(gè)例子:
{foreach from=$sports key=sport item=teams}
{$sport}
{foreach from=$teams item=team}
{$team['name']}{/foreach}
{/foreach}
總結(jié)
以上是生活随笔為你收集整理的php中解析数组,在PHP中解析多维数组的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: PHP漏洞全解(二)-命令注入攻击
- 下一篇: rh php56 php,在全球范围内提