我得到了这个数组:
Array
(
[0] => Array
(
[MONTH] => April
[logs-count] => 14
[log_type] => 0
)
[1] => Array
(
[MONTH] => August
[logs-count] => 942
[log_type] => 0
)
[2] => Array
(
[MONTH] => July
[logs-count] => 132
[log_type] => 0
)
[3] => Array
(
[MONTH] => June
[logs-count] => 114
[log_type] => 0
)
[4] => Array
(
[MONTH] => March
[logs-count] => 424
[log_type] => 0
)
[5] => Array
(
[MONTH] => May
[logs-count] => 79
[log_type] => 0
)
[6] => Array
(
[MONTH] => November
[logs-count] => 269
[log_type] => 0
)
[7] => Array
(
[MONTH] => October
[logs-count] => 4447
[log_type] => 0
)
[8] => Array
(
[MONTH] => October
[logs-count] => 3
[log_type] => 1
)
[9] => Array
(
[MONTH] => September
[logs-count] => 1003
[log_type] => 0
)
)
我想将这些值放到2个数组中:其中:每个月if log_type = 0
,转到1个数组和if log_type = 1
,转到2个数组,但是如果有来自f的日志(去年11月)并且他的log_type为0转到1个数组,但是第二个转到0)
所以在最后它应该是这样的例子如上:
1个数组
Array
(
[0] => 14
[1] => 942
[2] => 132
[3] => 114
[4] => 424
[5] => 79
[6] => 272
[7] => 4447
[8] => 1003
)
2阵列
Array
(
[0] => 0
[1] => 0
[2] => 0
[3] => 0
[4] => 0
[5] => 0
[6] => 0
[7] => 3
[8] => 0
)
答案 0 :(得分:1)
$arr0 = [];
$arr1 = [];
foreach ( $arr as $a ) {
switch ( $a['log_type'] ) {
case 0:
$arr0[] = $a['logs-count'];
break;
case 1:
$arr1[] = $a['logs-count'];
break;
}
}
这将解决您问题中易于理解的部分。
答案 1 :(得分:0)
您应该使用foreach循环和一些条件语句来对日志条目进行排序:
$array1 = array();
$array2 = array();
foreach ($input_array as $entry) {
if ($entry['MONTH']=='March' && $entry['log_type']==1) {
$array1[] = $entry['logs-count'];
} else if // Etc.
}
根据您的喜好调整条件陈述。
答案 2 :(得分:0)
尝试:
$arr = array(array('MONTH' => 'April', 'logs-count' => 14,'log_type' => 0),
array(...),
...
); //your array
$arr1 = $arr2 = array();
foreach($arr as $v) {
if( $v['log_type'] === 0 ) {
$arr1[] = $v['logs-count'];
$arr2[] = 0;
}
else if($v['log_type'] === 1)
$arr2[] = $v['logs-count'];
}