Язык: PHP
У меня есть форма, которая запрашивает у пользователей информацию об образовании, детали курса и технические детали. Когда форма отправлена, страница переходит на другую страницу, чтобы запустить процессы обработки информации и сохранить детали в базе данных. ОДНАКО (!) Затем мне нужно вернуть страницу обратно на исходную страницу, где требуется доступ к исходной информации поста.
Я думал, что было бы просто скопировать (по значению) многомерный (md) массив $ _POST в $ _SESSION ['post']
session_start();
$_SESSION['post'] = $_POST;
Однако, похоже, это только помещает верхний уровень массива в $ _SESSION ['post'], ничего не делая с дочерними / вложенными массивами.
Сокращенная форма массива md $ _POST выглядит следующим образом:
Array
(
[formid] => 2
[edu] => Array
(
['id'] => Array
(
[1] => new_1
[2] => new_2
)
['nameOfInstitution'] => Array
(
[1] => 1
[2] => 2
)
['qualification'] => Array
(
[1] => blah
[2] => blah
)
['grade'] => Array
(
[1] => blah
[2] => blah
)
)
[vID] => 61
[Submit] => Save and Continue
)
Если я повторяю $ _SESSION ['post'] ['formid'], он пишет "2", а если я повторяю $ _SESSION ['post'] ['edu'], он возвращает "Array". Если я проверяю, что edu является массивом (is_array ($ _ SESSION ['post'] ['edu])), он возвращает true. Если я повторяю $ _SESSION ['post'] ['edu'] ['id'], он возвращает массив, но при проверке (is_array ($ _ SESSION ['post'] ['edu] [' id '])) он возвращает ложь, и я не могу повторить ни один из элементов.
Как успешно скопировать (по значению, а не по ссылке) весь массив (включая его дочерние элементы) в новый массив?
СПАСИБО ВСЕМ ЗА ОТВЕТСТВЕННОСТЬ - ОБНОВЛЕНИЕ
Проблема была вызвана моими нерелевантными кавычками при именовании полей в моей форме.