Sum*_*x0r 6 php arrays foreach
我有一个数组返回一个请求的日期系列,我希望根据变量分为月或年.
当前数组的示例:
array(4) {
[0]=> string(10) "2012-02-01"
[1]=> string(10) "2012-02-02"
[2]=> string(10) "2011-02-03"
[3]=> string(10) "2011-03-04"
[4]=> string(10) "2011-04-05"
}
Run Code Online (Sandbox Code Playgroud)
为了在"月"或"年"视图中生成谷歌图表,我需要将此数组分开,并根据将在变量中的用户偏好将"年"或"月"组合在一起.
如果在"年视图"中我需要返回的示例
array(2) {
[0]=> Array(2) {
[0]=> string(10) "2012-02-01"
[1]=> string(10) "2012-02-02"
}
[1]=> Array(3) {
[0]=> string(10) "2011-02-03"
[1]=> string(10) "2011-03-14"
[2]=> string(10) "2011-04-18"
}
}
Run Code Online (Sandbox Code Playgroud)
不是100%肯定,如果这是一个声音数组,但我需要能够为每个数组日期做一个"foreach"语句,所以我可以添加所有的值(我需要的是函数的日期去获取并且返回一个总值和年份,因为它们被分组,所以它们都是相同的,我将在foreach语句中爆炸最后一个数组的年份.
这是预期的结果,但在"月"视图模式下
array(3) {
[0]=> Array(3) {
[0]=> string(10) "2012-02-01"
[1]=> string(10) "2012-02-02"
[2]=> string(10) "2011-02-03"
}
[1]=> Array(1) {
[1]=> string(10) "2011-03-14"
}
[2]=> Array(1) {
[1]=> string(10) "2011-04-18"
}
}
Run Code Online (Sandbox Code Playgroud)
任何帮助将不胜感激!我似乎无法在保持一切完整的同时找到解决方案.
Nie*_*sol 11
像这样的东西?
$years = Array();
$months = Array();
foreach($dates as $d) {
list($y,$m) = explode("-",$d);
$years[$y][] = $d;
$months[$y."-".$m][] = $d;
}
$years = array_values($years);
$months = array_values($months);
var_dump($years,$months);
Run Code Online (Sandbox Code Playgroud)