podmiana wartości w pętli foreach po kliknięciu przycisku

Cześć. Mam taki kod w swoim kontrolerze, który wyświetla mi tablicę lat:


 public static function getYears() {

        $nowYear = date("Y");

        $i = 0;

        for ($yearNum = 2010; $yearNum <= $nowYear; $yearNum++) {

            $year[] = $yearNum;

            $i++;

            if ($i == 3)

                break;

        }


        return $year;

    }

Tablicę przekazuję do indexu i wyświetlam tam listę lat.

Lata wyświetlam w pętli foreach w index:


       <?php foreach ($years as $year): ?>


        <div class="">

          

            <?= $year; ?><br>

           

        </div>


    <?php endforeach; ?>

<?= Html::a(Yii::t('app', 'Następny rok'), ['index'], ['class' => 'btn btn-primary']) ?>




<?= Html::a(Yii::t('app', 'Następny rok'), ['index', 'start_year' => $years[0] + 1], ['class' => 'btn btn-primary']) ?>



W kontrolerze wykorzystujesz zmienna $_GET do ustalenia startowego roku. Metoda generująca listę lat zrobiłbym tak:




 public static function getYears($start_year) {

        $maxYear = $start_year + 6; // 6 to zakres, pewnie powinieneś go ustalić samodzielnie

        $i = 0;

        for ($yearNum = $start_year; $yearNum <= $maxYear; $yearNum++) {

            $year[] = $yearNum;

            $i++;

            if ($i == 3)

                break;

        }


        return $year;

    }



dzięki za odpowiedź, tylko teraz muszę jeszcze przekazać argument do zmiennej $year do indexu:


 public function actionIndex() {

       

        return $this->render('index', [

                    

                    'years'=>$this->getYears($_GET['start_year'])

        ]);

    }


 'years'=>$this->getYears(nie mam pomysłu co wpisać)

podpowiesz? byłbym wdzięczny




'years'=>$this->getYears(isset($_GET['start_year']) ? $_GET['start_year'] : 2010)



?

Nie rozumiem do końca o co ci chodzi.

wow, dzięki wielkie za pomoc :) życzę miłego weekendu dobry człowieku ;)