In that field data is split into namespaces. Namespace and its data is separated by |, so if you use explode('|',$data) you will achieve array where odd index element is an data array and each even index element is an namespace. Here is an example how to decode this variable into namespaces:
$db = JFactory::getDbo(); $query = $db->getQuery(true); $query->select('data')->from('#__session'); $db->setQuery($query); $raw_data = str_replace('\0\0\0', chr(0) . '*' . chr(0), (string)$db->loadObject()->data); $raw_data = explode('|',$raw_data); $data = array(); for( $idx = 1, $ic=count($raw_data); $idx<$ic; $idx+=2 ) { $data[$raw_data[$idx-1]] = unserialize($raw_data[$idx]); }
The $data variable will contain session data split into separate array elements where array key is namespace. The default namespace should be first and its index should be __default