переместить объект от 1 страницы до другого?

13
задан dotty 13 October 2009 в 14:11
поделиться

4 ответа

Вы можете сохранять объекты в сеансе, но вам необходимо включить файл, содержащий определение класса, перед вызов session_start () (или используйте автозагрузку класса и настройте это перед началом сеанса). Например:

На каждой странице:

//include class definition
require('class.php');

//start session
session_start();

1-я страница:

$object = new class();
$object->someProperty = 'hello';

//store in session
$_SESSION['object'] = $object;

Последующие страницы:

$object = $_SESSION['object'];

//add something else, which will be stored in the session
$object->anotherPropery = 'Something';
19
ответ дан 1 December 2019 в 21:25
поделиться

Использование объекта в нескольких «скриптах»:

Во-первых, вы должны решить, какую структуру имеет ваше ООП-приложение. Если вы используете что-то вроде MVC шаблон , вам не нужно делать это с помощью SESSION или REQUEST, потому что вы можете «подключить» объекты, которые хотите использовать, в «один». Что это означает?

Быстрый пример:

  1. Пользователь A входит на ваш сайт index.php
  2. Теперь вы можете загружать контент из статического index.html, но если вы хотите проверить, аутентифицирован ли пользователь для просмотра определенного содержимого, например, «Admin Login», вы можете использовать include_once ('Authentication.php') и инициировать класс из этого файла, например Это сделает класс Auth также доступным в index.php или любом другом файле, который вы хотите включить в этот класс. Если вы хотите передать возвращаемое значение класса аутентификации в другой файл, например, «register.php», вы можете использовать SESSION или любой другой кэш. Не рекомендуется проходить объекты целиком из-за их размера. Намного лучше включать и запускать нужные классы в начале файлов. А передача результатов с помощью SESSION требует меньше места.

Это действительно зависит от того, какой фреймворк или API вы хотите использовать, или какой проект вы хотите создать.

1
ответ дан 1 December 2019 в 21:25
поделиться

Вы можете сохранить объект в SESSION. Вы можете сериализовать объект и передать его через GET или POST.

Если вы хотите, чтобы объект сохранялся на сайте, то SESSION, вероятно, ваш лучший выбор.

2
ответ дан 1 December 2019 в 21:25
поделиться

Вы можете использовать $ _SESSION . но это будет только для этой сессии.

1
ответ дан 1 December 2019 в 21:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: