Есть несколько подходов к этому.Что я не могу сказать из вашего описания, это именно то, что вы ищете.Если просто создать массив элементов, доступных в ваших представлениях, я бы поместил его в app_controller.php
var $teams = array('team1', 'team2', 'team3');
beforeFilter() {
$this->set('teams', $this->teams);
}
Затем, по вашему мнению, вы можете получить доступ к массиву с помощью переменной: $ team
Если вы хотите вызывать команды только для определенных представлений, не рекомендуется устанавливать эту переменную для ВСЕГО.Вы можете обойти это, настроив функцию в контроллере приложения.
function get_teams_array() {
$teams = array('team1', 'team2', 'team3');
return $teams;
}
Затем соберите элемент, который будет вызывать эту функцию: views / elements / team.ctp
<?php
$teams = $this->requestAction(
array('controller' => 'app', 'action' => 'teams'),
array('return')
);
/** process team array here as if it were in the view **/
?>
Тогда вы можете просто вызвать элемент с вашей точки зрения:
<?php echo $this->element('team'); ?>