Heim >Backend-Entwicklung >PHP-Tutorial >php数组拆分、组合
有一个数组:
Array
(
[0] => 15461209
[1] => 12
[2] => 12
[3] => 1055088
[4] => 1
[5] => admin
[6] => 1
[7] => hgtbrshbtyrws
[8] => 1366010391
[9] => hntyrhnrytwsnhbyrtnhb
[10] => 127.0.0.1
[11] => 0
[12] => 0
[13] => 1
[14] => 0
[15] => -1
[16] => -1
[17] => 0
[18] => 0
[19] => 0
[20] => 0
[21] => 0
[22] =>
[23] => 0
[24] => 15461210
[25] => 12
[26] => 12
[27] => 1055088
[28] => 0
[29] => admin
[30] => 1
[31] =>
[32] => 1366075840
[33] => 111111111111111
[34] => 127.0.0.1
[35] => 0
[36] => 0
[37] => 1
[38] => 0
[39] => -1
[40] => -1
[41] => 0
[42] => 0
[43] => 0
[44] => 0
[45] => 0
[46] => 0
[47] => 0
)
想在想变成这种形式:
Array
(
[0] => Array
(
[pid] => 15461209
[fid] => 12
[tid] => 1055088
[first] => 1
[author] => admin
[authorid] => 1
[subject] => hgtbrshbtyrws
[dateline] => 1366010391
[message] => hntyrhnrytwsnhbyrtnhb
[useip] => 127.0.0.1
[invisible] => 0
[anonymous] => 0
[usesig] => 1
[htmlon] => 0
[bbcodeoff] => -1
[smileyoff] => -1
[parseurloff] => 0
[attachment] => 0
[rate] => 0
[ratetimes] => 0
[status] => 0
[tags] =>
[comment] => 0
)
[1] => Array
(
[pid] => 15461210
[fid] => 12
[tid] => 1055088
[first] => 0
[author] => admin
[authorid] => 1
[subject] =>
[dateline] => 1366075840
[message] => 111111111111111
[useip] => 127.0.0.1
[invisible] => 0
[anonymous] => 0
[usesig] => 1
[htmlon] => 0
[bbcodeoff] => -1
[smileyoff] => -1
[parseurloff] => 0
[attachment] => 0
[rate] => 0
[ratetimes] => 0
[status] => 0
[tags] => 0
[comment] => 0
)
)
写个循环,把想要的数组组合出来,该如何写?考虑性能问题
array_chunk + array_combine
http://www.w3school.com.cn/php/php_ref_array.asp
来,挑一个吧
$arr=你的数组..$key=array ( 0 => 'pid', 1 => 'fid', 2 => 'tid', 3 => 'first', 4 => 'author', 5 => 'authorid', 6 => 'subject', 7 => 'dateline', 8 => 'message', 9 => 'useip', 10 => 'invisible', 11 => 'anonymous', 12 => 'usesig', 13 => 'htmlon', 14 => 'bbcodeoff', 15 => 'smileyoff', 16 => 'parseurloff', 17 => 'attachment', 18 => 'rate', 19 => 'ratetimes', 20 => 'status', 21 => 'tags', 22 => 'comment',);foreach(array_chunk($arr,24) as $v){ array_splice($v,1,1); $ar[]=array_combine($key,$v);}print_r($ar);