Я думаю, что операторы как
Используя оператор переключения являются плохим стилем ООП.
и
Операторы выбора могут почти всегда заменяться полиморфизмом.
упрощают. Истина - то, что операторы выбора, которые включают тип , являются плохим стилем ООП. Они - те, Вы хотите заменить полиморфизмом. При включении значение прекрасно.
Вы упускаете какой-то этап в процессе? Строка запроса, как показано ниже:
/**
* Returns a list with all the months for the archive
*
* @return array
*/
public function Archive()
{
$q = "SELECT DISTINCT MONTH(`data`) AS `month`,YEAR(`data`) AS `year` FROM `posts` ORDER BY `data` DESC";
$stmt = $db->query($q);
$all = $stmt->fetchAll();
if (count($all) > 0) {
foreach ($all as $info) {
$months[] = array('month_name'=>$this->months($info['month']),'year'=>$info['year'],'month'=>$info['month']);
}
return $months;
}else{
return false;
}
}