Персональна сторінка shra, блог фріленсерів, веб-розробника на PHP. Тут я ділюся своїм досвідом і думками, проводжу досліди над людьми, збираю нематеріальні свідоцтва власної дурості. Використовуючи приклади програмного коду з даного сайту, ви приймаєте всю відповідальність за можливі наслідки їх використання, включаючи ваше психічне здоров'я і інтереси третіх осіб.
Блог / На першій шпальті / Правильна сериализация (serialize) перед збереженням в базу даних
А хотілося б почати зі слів - якщо нічого не виходить, прочитайте нарешті інструкцію. Функції serialize - unserialize відмінно працюють в PHP, і чим далі, тим краще :). Проте на форумах тут і там зустрічаються теми на кшталт - «А чим замінити сериализацию в PHP?» Або «Серіалізация своїми руками ..» (полювання додати при цьому - «кривими руками» або створити тему - «Серіалізация через ж ...») .
Як правило, проблеми виникають після вилучення збережених серіалізовать даних з БД. Масиву не десеріалізуются, об'єкти не працюють і прочая ...
Що не так з об'єктами
Опис класу має йти до того як ви виконаєте unserialize. Якщо потрібно виконати на цьому етапі якісь дії над об'єктом - опишіть в класі функцію __wakeup ().
Що не так з базою даних
Характерно, що при збереженні в бд текстових полів (в залежності від визначення полів таблиці), ви втрачаєте фігурні дужки, які як раз з'являються при серіалізациі масивів і об'єктів. Підготуйте дані в такий спосіб: