перенос двухмерного массива с атрибутами на другую страницу - PullRequest
2 голосов
/ 01 июня 2011

У меня есть двумерный массив, подобный этому;

$results[$i][$j]->title;
$results[$i][$j]->snippet;
$results[$i][$j]->link;

Он полон ценностей. Я должен использовать эту переменную со своими значениями на другой странице. Я пытаюсь это с сеансом, но это дает ошибки.

Как мне решить эту проблему?

Спасибо за вашу помощь.

Ответы [ 3 ]

3 голосов
/ 01 июня 2011

Первая страница:

session_start();
$_SESSION['fancy array'] = array("foo"=>array("b","a","r"));

Вторая страница:

session_start();
print_r($_SESSION['fancy array']);

У меня работает:]

1 голос
/ 01 июня 2011

Если вы попытаетесь сериализовать объект в сеансе (как ранее предлагалось), помните, что функции-члены __sleep и __wakeup будут вызываться автоматически. Более того, вам нужно будет убедиться, что конструктор класса объекта доступен на следующей странице . (Это очень распространенная стена, на которую люди попадают, когда пытаются пропустить объекты в $ _SESSION.)

http://php.net/function.serialize

Смотри также:

http://php.net/language.oop5.serialization

Рассматривали ли вы просто извлечение необходимых атрибутов объекта и сохранение их в виде скалярных значений в массиве? Это будет легко хранить через $ _SESSION и не потребует дополнительного рассмотрения.

1 голос
/ 01 июня 2011

на странице 1, после объявления $results var, до вывода любого вида (до <html>)

session_start();
$_SESSION['results'] = $results;

На странице 2:

session_start();
$results = $_SESSION['results'];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...