Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在php和mysql下安排月份_Php_Mysql_Json - Fatal编程技术网

在php和mysql下安排月份

在php和mysql下安排月份,php,mysql,json,Php,Mysql,Json,我一直在为这个磨齿轮。请看同一主题。这似乎是一个很难解决的问题。但是,我发现,看起来德里克·阿代尔(Derek Adair)已经成功地将同样的问题转化为json 我的问题是: 我怎样才能从这个查询中找到答案 SELECT MONTHNAME(date) as month, YEAR(date) as year FROM MOCK_DATA GROUP BY YEAR(date), MONTH(date) DESC 通过json数组或obecjt(stdClass)获取结果 因为

我一直在为这个磨齿轮。请看同一主题。这似乎是一个很难解决的问题。但是,我发现,看起来德里克·阿代尔(Derek Adair)已经成功地将同样的问题转化为json

我的问题是:

我怎样才能从这个查询中找到答案

SELECT
    MONTHNAME(date) as month, YEAR(date) as year
FROM
    MOCK_DATA
GROUP BY YEAR(date), MONTH(date) DESC
通过json数组或obecjt(stdClass)获取结果

因为现在我得到了以下结果:

Array(35) { [0]=> object(stdClass)#19 (2) {
["month"]=> string(8) "December" 
["year"]=> string(4) "2013" } 
[1]=> object(stdClass)#20 (2) { 
["month"]=> string(8) "November" 
["year"]=> string(4) "2013" } . . . .
预期的结果是:

2013
jan
feb
...etc
2014
jan
feb
..etc
2015
jan
feb
..etc

请参阅下面的代码

$result = mysql_query("SELECT MONTHNAME( DATE ) AS 
MONTH , YEAR( DATE ) AS YEAR
FROM mdata
GROUP BY YEAR( DATE ) , MONTH( DATE ) DESC ");
$data = array();
while ($row = mysql_fetch_array($result, MYSQL_NUM)) { 
    $m = $row[0];
    $y = $row[1];
    if(!isset($data[$y]) ) {
        $data[$y] = array();
    }
    $data[$y][] = $m;
}
echo '<pre>'.print_r($data, true).'</pre>';

请参阅下面的代码

$result = mysql_query("SELECT MONTHNAME( DATE ) AS 
MONTH , YEAR( DATE ) AS YEAR
FROM mdata
GROUP BY YEAR( DATE ) , MONTH( DATE ) DESC ");
$data = array();
while ($row = mysql_fetch_array($result, MYSQL_NUM)) { 
    $m = $row[0];
    $y = $row[1];
    if(!isset($data[$y]) ) {
        $data[$y] = array();
    }
    $data[$y][] = $m;
}
echo '<pre>'.print_r($data, true).'</pre>';

这是我得到的答案,感谢大家的认可

echo '<br>Years and months<br>';
foreach($this->arrange as $year => $yearMonths) {
    echo '<b>Year: '.$year.'</b><br>';
    foreach($yearMonths as $month) {
        echo 'Month: '.$month.'<br>';
    }
    echo '<br>';
}
echo '<br>Only years<br>';
foreach($this->arrange as $year => $yearMonths) {
    echo '<b>Year: '.$year.'</b><br>';
}
这就是我打印它的方式:

echo'
年和月
; foreach($this->安排为$year=>$yearmonds){ 回音“年:”.$Year.“
”; foreach($yearmonts作为$month){ 回显“月:”.$Month.“
”; } 回声“
”; } 回音“
仅年
”; foreach($this->安排为$year=>$yearmonds){ 回音“年:”.$Year.“
”; }
多亏了公认的答案,这才是我想到的

echo '<br>Years and months<br>';
foreach($this->arrange as $year => $yearMonths) {
    echo '<b>Year: '.$year.'</b><br>';
    foreach($yearMonths as $month) {
        echo 'Month: '.$month.'<br>';
    }
    echo '<br>';
}
echo '<br>Only years<br>';
foreach($this->arrange as $year => $yearMonths) {
    echo '<b>Year: '.$year.'</b><br>';
}
这就是我打印它的方式:

echo'
年和月
; foreach($this->安排为$year=>$yearmonds){ 回音“年:”.$Year.“
”; foreach($yearmonts作为$month){ 回显“月:”.$Month.“
”; } 回声“
”; } 回音“
仅年
”; foreach($this->安排为$year=>$yearmonds){ 回音“年:”.$Year.“
”; }
从查询中提取数据后,使用forloop并执行该操作。从查询中提取数据后,使用forloop并执行该操作。
echo '<br>Years and months<br>';
foreach($this->arrange as $year => $yearMonths) {
    echo '<b>Year: '.$year.'</b><br>';
    foreach($yearMonths as $month) {
        echo 'Month: '.$month.'<br>';
    }
    echo '<br>';
}
echo '<br>Only years<br>';
foreach($this->arrange as $year => $yearMonths) {
    echo '<b>Year: '.$year.'</b><br>';
}