PHP 将数组转换为 foreach


PHP turn array into foreach

我正在尝试获取下面的代码并将其转换为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}

提前感谢您的帮助。

要以您需要的格式获取它,只需将循环更改为以下内容:

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

这是

你想做的吗?

但是我不知道索引"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);