Я знаю, что здесь были некоторые похожие вопросы, но ни один из них не кажется мне точно тем, в чем заключается моя проблема, или для их понимания требовалось более глубокое знание, чем у меня.
Что я пытаюсь сделать:
- сохранить значения $ _POST в массиве
- сериализовать этот массив
- сохранить массив в 2D $ _SESSION, который состоит из трех одинаковых массивов
- , получитьданные из массива $ _SESSION непосредственно на другой странице
Моя попытка описана ниже
if ($_SERVER["REQUEST_METHOD"] === 'POST') {
$name = $_POST['name'];
$surname = $_POST['surname'];
$age = $_POST['age'];
$assocArray = ['name' => $_POST['name'], 'surname' => $surname, 'age' => $age];
$assocArraySerialized = serialize($assocArray);
$_SESSION += ['etap1' => $assocArraySerialized];
echo unserialize($_SESSION['etap1']['name']);
}
Когда я пытаюсь повторить элемент, я получаю:
- Предупреждение: недопустимое смещение строки 'name'
- unserialize (): ошибка по смещению 0 из 1 байта в определенном пути к локальному хосту ...
Я проверил, работает ли $ _POST, и когда я повторяю $ _POST ['name'], я вижу желаемое значение.Когда я var_dump $ _SESSION, я вижу, что он был сериализован правильно.
Как я могу получить те же данные восстановления из $ _SESSION?