У меня возникли проблемы с пониманием концепции сериализации/unserialize в PHP.serialize/unserialize php object
Предположим, у меня есть очень простой PHP объект (класс SomeObject) и после установки атрибутов этого объекта я хочу сериализовать:
Так я называю: serialize($someObject)
;
Я хочу передать этот сериализованный объект в другой PHP Skript через HTML форму, так что я установить его как скрытое значение:
<input type="hidden" name="someObject" value="<? print $someObject; ?>"
В следующем PHP скрипт я хочу использовать десериализируются, чтобы получить мой объект обратно и передать его, например к базам данных.
$unserialize = unserialize($_POST['someObject'])
Но это всегда возвращает BOOL (false) - так что мне здесь не хватает?
Благодарим за помощь!
хорошо .. сделайте 'var_dump ($ _POST ['someObject']);' и посмотрите .. также, вы должны использовать сеансы для этого, а не скрытые поля ввода. –
Что означает $ _POST ['someObject'] во втором скрипте? – deceze
Я не знаю никаких гарантий того, что сериализованная строка не будет содержать '' ', и если это произойдет, сгенерированный HTML будет нарушен. Если unserialize() не может десериализовать объект, он вернет' false' –