2016-01-13 106 views
0

我正在尝试下面的代码,将它变成一个foreach循环而不是一个数组来填充一些代码。任何帮助,将不胜感激。PHP将数组转换为foreach

$first = strtotime(date('01-m-Y')); 
    $months = array(); 

    for ($i = 6; $i >= 1; $i--) { 
     array_push($months, date('M', strtotime("-$i month", $first))); 
    } 

    print_r($months); 

它返回的结果

Array (
[0] => Jul 
[1] => Aug 
[2] => Sep 
[3] => Oct 
[4] => Nov 
[5] => Dec 
) 

我试图所以它看起来像

{ y: 'Jul', a: 0}, 
{ y: 'Aug', a: 100}, 
{ y: 'Sep', a: 100}, 
{ y: 'Oct', a: 100}, 
{ y: 'Nov', a: 100}, 
{ y: 'Dec', a: 100} 

感谢提前的帮助下格式化代码。

+1

你想** ** JSON **字符串? –

+0

我正在尝试使用php为我的数据从MYSQL构建一个循环来填充Morris图表。 – NUGGET

+0

对于foreach,你需要数组。 –

回答

0

为了得到它在你需要的格式,只需将循环改成这样:

for ($i = 6; $i >= 1; $i--) { 
    array_push($months, array('y' => date('M', strtotime("-$i month", $first)), 'a' => 0)); 
} 

echo json_encode($months); 

你需要更换0但与你得到的数字(0/100/100/100/etc

0

这是你想要做的吗?

但是我不知道索引“a”做了什么。所以只需要放100个。

for ($i = 6; $i >= 1; $i--) { 
     array_push($months, array('y' => date('M', strtotime("-$i month", $first)), 'a' => 100)); 
    } 

    echo json_encode($months); //if you want json 
    print_r($months);