Как получить дату из базы данных и отображать без повторов? - PullRequest
2 голосов
/ 05 июля 2011

У меня была функция, которая извлекает все даты из базы данных для каждой записи.

public function getAllYears() {

    $collection = Mage::getModel('press/press')->getCollection()->getYears();

    return $collection;

}

и отображаю его как:

<?php  

        $coll =  $this->getAllYears();

    ?>


         <?php foreach ($coll as $list): ?>

                <?php echo $list["year"]; ?>
         <?php endforeach; ?>

Он дает мне все годы (даты), не заботясь о повторении, тогда как я хочу, чтобы одна и та же дата не повторялась.

Значит, тот же год не должен повторяться. Любая помощь?

Ответы [ 2 ]

2 голосов
/ 05 июля 2011

Возможно, измените код дисплея на:

<?php
$years = array();
$coll =  $this->getAllYears();
foreach ($coll as $list)
    $years[] = $list['year'];
$years = array_unique($years);
?>

<?php foreach ($years as $year): ?>
<?php echo $year; ?>
<?php endforeach; ?>
0 голосов
/ 05 июля 2011

Как насчет:

<?php  
$coll =  $this->getAllYears();

$lastyear
foreach ($coll as $list)
{
    if($list["year"] != $lastyear) {
    echo $list["year"];
}
$lastyear = $list["year"]
}
?>
...