У меня есть один командный массив, и я хочу, чтобы это имя команды везде, где было показано имя команды. Можно создать глобальную функцию, которая может возвращать имя команды, и я вызываю эту функцию из моего представления, это означает, что файл ctp ,Функция вызова с учетом cakephp
ответ
Вы можете добавить в ваш /app/config/bootstrap.php файл что-то вроде:
Configure::write('teams', array('team1', 'team2'));
Тогда везде, где вы можете получить, что массив:
$teams = Configure::read('teams');
и использовать его.
Существует несколько подходов к этому. То, что я не могу сказать из вашего описания, - именно то, что вы ищете. Если это просто создать массив элементов, который доступен в ваших взглядах, я бы поставил его в app_controller.php
var $teams = array('team1', 'team2', 'team3');
beforeFilter() {
$this->set('teams', $this->teams);
}
Тогда, по вашему мнению, вы можете получить доступ к массиву переменным: $ команд
Если вы хотите только позвонить командам на определенные виды, возможно, не стоит устанавливать эту переменную для ВСЕГО. Вы можете обойти это, установив функцию в контроллере приложения.
function get_teams_array() {
$teams = array('team1', 'team2', 'team3');
return $teams;
}
Затем положить вместе элемент, который будет вызывать эту функцию: просмотров/элементы/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'); ?>
please try this for west:
<?php
// controller name like app,users
// action name like getdata should be in controller
// and you can send parameter also
$output = $this->requestAction('controllerName/actionName/'.$parameter);
?>
Есть ли причина, по которой вы его записываете в объект конфигурации? Обычно я обычно определяю вещи в файле начальной загрузки как константы, например, define (TEAMS, array (...)); –
Я не думаю, что можно определить массив как константу. Константы могут оценивать только скалярные значения (предупреждение на экране). Прочтите описание здесь http://book.cakephp.org/view/42/The-Configuration-Class, и вы увидите, что команда торта рекомендует использовать его вместо переменных и констант. –