У меня есть страница CI, которая загружается в div в файле представления, используя jQuery. Используя переключатель (page_parameter), я контролирую то, что отображается со страницы.
Когда я вызываю страницу в третий раз, я устанавливаю значение в массив классов.
Но когда я вызываю 4-й раз, массив становится пустым.
Мне было интересно, возможно ли на самом деле использовать свойство класса для хранения значения, которое можно использовать после повторного доступа к странице? Или чего-то не хватает в моей голове?
Я знаю, что использование сессии не очень хорошая идея, поскольку реальный массив - это большой кусок сериализованного XML.
Вот мой код:
class MyClass extends MY_Controller
{
public static $pitems = array();
function Hotel(){
parent::MY_Controller();
}
function new_campaign(){
$params = $this->uri->uri_to_assoc();
switch($params['step']){
case '3' : self::$pitems = array("test","another"); //here the class array was set successfully
$this->load->view('viewer');
break;
case '4' : print_r(self::$pitems); //here the array is empty
break;
}
}
На странице просмотра есть вызов на страницу:
<a href="myclass/new_campaign/step/4">Next page</a>
Та же проблема и с $ this->
Что мне здесь не хватает?
Заранее спасибо ~
редактирование:
Я видел сценарий, который имеет похожий сценарий. он успешно использовал набор переменных в конструкторе, вместо того, чтобы рассматривать его как переменную класса. Я посмотрю внимательно, чтобы подтвердить это, но сейчас я закрою эту ветку. Спасибо Крис за то, что поделился.