Сессии PHP и unserialize()

Как прочитать данные из сохранённой сессии

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

← Вернуться к полной версии записи «Сессии PHP и unserialize()»…

Автор: ; опубликовано в: PHP; метки: PHP, unserialize, сессия
6
Мар
2008

RSS Комментарии к статье «Сессии PHP и unserialize()» (4)  »

  1. [...] как прочитать данные из Session::session_data, можно прочитать в этой статье. Сразу отмечу, что PHP самостоятельно выполняет [...]

  2. Зануда

    А если так?

    [-]
    View Code PHP
    <?php
      $string = "foo|bar|baz|10001010101";
      print_r(explode('|', $string, 2));
    ?>
  3. Зануда, Ваш вариант будет работать только в том случае, если заранее известно количество элементов в $_SESSION, а также то, что вертикальная черта может быть только в последнем элементе.

    Если взять Ваш пример:

    [-]
    View Code PHP
    $data[0] = 'foo';
    $data[1] = 'bar|baz|10001010101';

    Но не

    [-]
    View Code PHP
    $data[0] = 'foo|bar';
    $data[1] = 'baz|10001010101';
  4. xandr

    Спасибо, работает)

Пожалуйста, не используйте эту форму для комментирования! Данная форма предназначена исключительно для ботов.

Оставить комментарий к записи «Сессии PHP и unserialize()»

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Оставляя комментарий, вы выражаете своё согласие с Правилами комментирования.

Подписаться, не комментируя

गते गते पारगते पारसंगते बोधि स्वाहा