这是我的数组,我想要下面的结果,但不能弄清楚。
结果是一个ID的日期从2014-06-01到2014-06-xx月的最后一天之间的次数的计数
在我的数组中有日期"array[1]",只有6-7-8有错误的日期。
请帮忙:-S
结果Array
(
[0] => Array
(
[1] => 2
[4] => 2
[7] => 3
[9] => 1
[12] => 1
[13] => 1
)
)
Array
(
[0] => Array
(
[0] => 4
[1] => 4
[2] => 7
[3] => 1
[4] => 7
[5] => 7
[6] => 3
[7] => 3
[8] => 4
[9] => 9
[10] => 12
[11] => 2
[12] => 13
[13] => 1
)
[1] => Array
(
[0] => 2014-06-18
[1] => 2014-06-10
[2] => 2014-06-05
[3] => 2014-06-05
[4] => 2014-06-12
[5] => 2014-06-11
[6] => 2013-12-12
[7] => 2014-07-23
[8] => 2014-05-13
[9] => 2014-06-01
[10] => 2014-06-12
[11] => 2014-06-04
[12] => 2014-06-04
[13] => 2014-06-11
)
)
希望以下工作有效。没有测试。
$idsArray = $yourArray[0];
$dateArray = $yourArray[1];
$countArray = array(); // the result array
$beginningTimestamp = strtotime('2014-06-01');
$lastTimestamp = strtotime('2014-07-01'); // before the first of July comes the last of June
foreach ($idsArray as $key => $id) {
if (isset($dateArray[$key])) {
$timestamp = strtotime($dateArray[$key];
if ($timestamp >= $beginningTimestamp && $timestamp < $lastTimestamp) {
if (isset($countArray[$id])) {
$countArray[$id]++;
} else {
$countArray[$id] = 1;
}
}
}
}