一个简单的PHP笔试题

通常我们会用SQL从数据库里面取出一些满足条件的列,然后通过程序处理,生成以栏目的为三维数据,

如下(是从数据库里面取现来的数据

 1 /* 数组 */
2 $arr = array(
3 0=>array('id'=>1, 'classid'=>1, 'classtitle'=>'政府新闻', 'title'=>'第九届民族运动会官方微博开通', 'content'=>'test'),
4 1=>array('id'=>2, 'classid'=>1, 'classtitle'=>'政府新闻', 'title'=>'夏日避暑 你不得不去的地方', 'content'=>'test'),
5 2=>array('id'=>3, 'classid'=>2, 'classtitle'=>'IT新闻', 'title'=>'贵阳飞泰国两人只需2580元', 'content'=>'test'),
6 3=>array('id'=>4, 'classid'=>3, 'classtitle'=>'时事新闻', 'title'=>'今年夏日哪里去 都匀漂流好地方', 'content'=>'test'),
7 4=>array('id'=>5, 'classid'=>1, 'classtitle'=>'政府新闻', 'title'=>'遵义机场选定“会址”造型', 'content'=>'test'),
8 5=>array('id'=>6, 'classid'=>2, 'classtitle'=>'IT新闻', 'title'=>'七月荔波之美 赞叹山水中的贵族', 'content'=>'test'),
9 6=>array('id'=>7, 'classid'=>3, 'classtitle'=>'时事新闻', 'title'=>'摆脱空调 安顺享受20℃的盛夏', 'content'=>'test'),
10 7=>array('id'=>8, 'classid'=>3, 'classtitle'=>'时事新闻', 'title'=>'荔波“六月六”布依歌节丰富多彩', 'content'=>'test'),
11 8=>array('id'=>9, 'classid'=>1, 'classtitle'=>'政府新闻', 'title'=>'寻找世界超短裙的故乡', 'content'=>'test'),
12 9=>array('id'=>10, 'classid'=>4, 'classtitle'=>'地区新闻', 'title'=>'“彝族民歌”入选非物质文化遗产名录', 'content'=>'test'),
13 10=>array('id'=>11, 'classid'=>4, 'classtitle'=>'地区新闻', 'title'=>'板告水寨 像凤凰羽毛一样美丽', 'content'=>'test'),
14 11=>array('id'=>12, 'classid'=>4, 'classtitle'=>'地区新闻', 'title'=>'在贵阳 有个舞台叫湿地公园', 'content'=>'test'),
15 12=>array('id'=>13, 'classid'=>1, 'classtitle'=>'政府新闻', 'title'=>'招堤流光溢彩迎接荷花节', 'content'=>'test')
16 );


转换成如下格式的内容:(以栏目分类

  1 Array
2 (
3 [1] => Array
4 (
5 [title] => 政府新闻
6 [1] => Array
7 (
8 [id] => 1
9 [title] => 第九届民族运动会官方微博开通
10 [content] => 2011年7月12日上午,第九届少数民族传统体育运动会官方微博开通暨与腾讯网合作签
11 )
12
13 [2] => Array
14 (
15 [id] => 2
16 [title] => 夏日避暑 你不得不去的地方
17 [content] => 说起贵阳,映入脑海的准是“林城”二字, 碧绿的山间,漫着轻轻的薄雾;澄清的水里,
18 )
19
20 [5] => Array
21 (
22 [id] => 5
23 [title] => 遵义机场选定“会址”造型
24 [content] => 荔波,是一个以布依族、水族、苗族和瑶族为主的少数民族聚集处
25 )
26
27 [9] => Array
28 (
29 [id] => 9
30 [title] => 寻找世界超短裙的故乡
31 [content] => 说起贵阳,映入脑海的准是“林城”二字,
32 )
33
34 [13] => Array
35 (
36 [id] => 13
37 [title] => 招堤流光溢彩迎接荷花节
38 [content] => 说起贵阳,映入脑海的准是“林城”二字,
39 )
40
41 )
42
43 [2] => Array
44 (
45 [title] => IT新闻
46 [3] => Array
47 (
48 [id] => 3
49 [title] => 贵阳飞泰国两人只需2580元
50 [content] => test
51 )
52
53 [6] => Array
54 (
55 [id] => 6
56 [title] => 七月荔波之美 赞叹山水中的贵族
57 [content] => test
58 )
59
60 )
61
62 [3] => Array
63 (
64 [title] => 时事新闻
65 [4] => Array
66 (
67 [id] => 4
68 [title] => 今年夏日哪里去 都匀漂流好地方
69 [content] => test
70 )
71
72 [7] => Array
73 (
74 [id] => 7
75 [title] => 摆脱空调 安顺享受20℃的盛夏
76 [content] => test
77 )
78
79 [8] => Array
80 (
81 [id] => 8
82 [title] => 荔波“六月六”布依歌节丰富多彩
83 [content] => test
84 )
85
86 )
87
88 [4] => Array
89 (
90 [title] => 地区新闻
91 [10] => Array
92 (
93 [id] => 10
94 [title] => “彝族民歌”入选非物质文化遗产名录
95 [content] => test
96 )
97
98 [11] => Array
99 (
100 [id] => 11
101 [title] => 板告水寨 像凤凰羽毛一样美丽
102 [content] => test
103 )
104
105 [12] => Array
106 (
107 [id] => 12
108 [title] => 在贵阳 有个舞台叫湿地公园
109 [content] => test
110 )
111
112 )
113
114 )

一看,也许你会觉得还是有一点难的哦,但是。。。。只需要几行代码就可以OK(这做为一个笔试题很好。可以考查对方的PHP的数组的了解,PHP的数组可以很重要的哦)

答案如下:

1     $array = Array();    
2 foreach( $arr as $key=>$value ) {
3 $array[$value['classid']]['title'] = $value['classtitle'];
4 $array[$value['classid']][$value['id']]['id'] = $value['id'];
5 $array[$value['classid']][$value['id']]['title'] = $value['title'];
6 $array[$value['classid']][$value['id']]['content'] = $value['content'];
7 }
8 print_r($array);



posted @ 2011-10-18 14:44  wgw8299  阅读(624)  评论(0编辑  收藏  举报