您好,欢迎访问一九零五行业门户网

遍历json数据,对同一属性数据进行分组?

{ module_list: [ { content: { module-type: list-1, module: list, type: 1, name: 职位列表 , logo1: imgurl1, title1: baidu1, desc1: hahahha1, url1: www.baidu.com1, logo2: imgurl2, title2: baidu2, desc2: hahahha2, url2: www.baidu.com2, logo3: imgurl3, title3: baidu3, desc3: hahahha3, url3: www.baidu.com3, logo4: , title4: , desc4: , url4: , jobs: [ { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:1 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:2 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:3 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:4 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:1 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:1 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:4 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:4 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:3 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:2 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:2 } ] }, } ]}

json存储了一些职位信息,怎么根据mark的值,对这些信息进行分组 ,例如mark值为group:1的放到一个分组里,,mark值为group:2的放到一个分组里,然后在前端显示在不同模块里。该怎么对数据进行遍历?遍历之后怎么根据不同的mark值放到不同的数组里呢
public static function buildlist($module){ $joblist2 = ; if($module['jobs']){ foreach($module['jobs'] as $job){ $joblist2 .= {$job['name']} {$job['salary']} html; } } return {$module['title1']} {$module['desc1']}
{$joblist2} 更多职位
{$module['title2']} {$module['desc2']}
{$joblist2} 更多职位
{$module['title3']} {$module['desc3']}
{$joblist2} 更多职位
{$module['title4']} {$module['desc4']}
{$joblist2} 更多职位
html; }

就是根据不同的group的值,让数据显示在相应的模块下面
回复内容: { module_list: [ { content: { module-type: list-1, module: list, type: 1, name: 职位列表 , logo1: imgurl1, title1: baidu1, desc1: hahahha1, url1: www.baidu.com1, logo2: imgurl2, title2: baidu2, desc2: hahahha2, url2: www.baidu.com2, logo3: imgurl3, title3: baidu3, desc3: hahahha3, url3: www.baidu.com3, logo4: , title4: , desc4: , url4: , jobs: [ { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:1 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:2 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:3 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:4 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:1 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:1 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:4 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:4 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:3 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:2 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:2 } ] }, } ]}

json存储了一些职位信息,怎么根据mark的值,对这些信息进行分组 ,例如mark值为group:1的放到一个分组里,,mark值为group:2的放到一个分组里,然后在前端显示在不同模块里。该怎么对数据进行遍历?遍历之后怎么根据不同的mark值放到不同的数组里呢
public static function buildlist($module){ $joblist2 = ; if($module['jobs']){ foreach($module['jobs'] as $job){ $joblist2 .= {$job['name']} {$job['salary']} html; } } return {$module['title1']} {$module['desc1']}
{$joblist2} 更多职位
{$module['title2']} {$module['desc2']}
{$joblist2} 更多职位
{$module['title3']} {$module['desc3']}
{$joblist2} 更多职位
{$module['title4']} {$module['desc4']}
{$joblist2} 更多职位
html; }

就是根据不同的group的值,让数据显示在相应的模块下面
var map = {};
for(var i=0,l=jobs.length;i var key = jobs[i]['mark'];
map[key] = map[key] || (map[key] = []);
map[key].push(jobs[i]);
}
return map;
这样返回的map就是一个key,value
{
group1:[job1,job2],
group2:[job3,job4]
}
应该就是你想要的
循环jobs数组:
var jobssortobject = {}; for(var i =0; i
jobssortobject就会是这个样子:
{ 'group:1' : [{} , {}, {}], 'group:2' : [ {} ]}
php$json = '{ module_list: [ { content: { module-type: list-1, module: list, type: 1, name: 职位列表 , logo1: imgurl1, title1: baidu1, desc1: hahahha1, url1: www.baidu.com1, logo2: imgurl2, title2: baidu2, desc2: hahahha2, url2: www.baidu.com2, logo3: imgurl3, title3: baidu3, desc3: hahahha3, url3: www.baidu.com3, logo4: , title4: , desc4: , url4: , jobs: [ { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:1 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:2 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:3 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:4 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:1 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:1 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:4 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:4 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:3 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:2 }, { name: 产品经理, salary: 10k-15k, url: www.baidu.com, desc: 广州, mark: group:2 } ] } } ]}';$job = json_decode($json,true);$arr = [];foreach ($job['module_list'][0]['content']['jobs'] as $key => $value) { $mark = substr($value['mark'],-1,1); $arr[$value['mark']][] = $value; $arr[$value['mark']]['title'.$mark] = $job['module_list'][0]['content']['title'.$mark]; $arr[$value['mark']]['desc'.$mark] = $job['module_list'][0]['content']['desc'.$mark];}print_r($arr);
其它类似信息

推荐信息