(PHP)无法通过函数将关联数组中的内容推入

时间:2019-09-20 08:45:47

标签: php arrays function push associative

我得到了此函数,该函数按月在关联数组中返回星期列表:

private function getSemainesMois($year){
        $semaines = ['Janvier' => [], 'Février' => [], 'Mars' => [],
            'Avril' => [], 'Mai' => [], 'Juin' => [],
            'Juillet' => [], 'Août' => [], 'Septembre' => [],
            'Octobre' => [], 'Novembre' => [], 'Décembre' => []];
        //...

        while($month < 13){
            if($jourCourant == 1 and $this->firstDayOfMonthIsMonday($month, $year) == 0){
                if($month == 1 and $lastWeekPrev != 1){
                    //...
                    $semaines[array_keys($semaines)[$month-1]][$semaineCourante] = array();
                    //...
                } else{
                    $semaines[array_keys($semaines)[$month-1]][$semaineCourante] = array();
                    //...
                }
            }
          //...
        }
        return $semaines;
    }

如您所见,我每周为以下结果(var_dump)附加一个数组:

array(12) { ["Janvier"]=> array(5) { [1]=> array(0) { } [2]=> array(0) { } [3]=> array(0) { } [4]=> array(0) { } [5]=> array(0) { } } ["Février"]=> array(5) { [5]=> array(0) { } [6]=> array(0) { } [7]=> array(0) { } [8]=> array(0) { } [9]=> array(0) { } } ...

我想使用此功能在空数组(每个星期数)中附加一些值:

private function getHeuresSemainesMois($year){
        $semaines = $this->getSemainesMois($year);

        foreach($semaines as $key=>$values){
            foreach($values as $sem){
                $sem[] = 1;
            }
        }
        var_dump($semaines);
        return $semaines;
    }

但是我得到了与上面相同的结果,我尝试使用array_push()和一个序列化/反序列化的方法,但是这些方法不起作用。 有人会为我的问题提供解释以及解决方案吗?

0 个答案:

没有答案
相关问题