Я попытался объявить статическую и общедоступную переменную в AppController следующим образом.
class AppController extends Controller {
public static $var = 0;
}
А затем получить доступ к статической переменной в контроллере ее подкласса.
В моем файле CTP есть несколько кнопок отправки, которые изменяют значение статической переменной.
eg.
button A -> $var ++
button B -> $var --
Я также попробовал сеанс и запустил его в функции перед фильтром контроллера приложения. По-прежнему при многократной отправке переменная сеанса снова сбрасывается.
class AppController extends Controller {
public function beforeFilter() {
parent::beforeFilter();
$this->Session->write('var', 0);
}
}
В обоих случаях (статическая переменная или сеанс) статическая переменная может быть только +1, 0 или -1. Кажется, AppController загружается при обновлении страницы. Что мне действительно нужно, так это то, что статическая переменная может быть + или - более 1 после многократного нажатия кнопок, а статическая переменная сбрасывается только после закрытия браузера.
AppController
. 2. лучше всего создать переменную сеанса и соответствующим образом обновить ее. - person Anant Kumar Singh   schedule 30.08.2016