如何从解密的字符串中读取数据

时间:2013-06-13 05:14:44

标签: php

string(284) "a:4:{s:10:"session_id";s:32:"01a046827a00cf838a1b3ce585cc82fb";s:10:"ip_address";s:13:"124.43.56.156";s:10:"user_agent";s:120:"Mozilla/5.0 (Windows; U; Windows NT 6.2; en-US) AppleWebKit/533.20.25 (KHTML, like Gecko) Version/5.0.4 Safari/533.20.27";s:13:"last_activity";i:1371099813;}"

这是来自CodeIgniter的解密cookie。我需要从中访问数据。最好转换为数组或易于访问的内容,如data -> session_id。哪种方法可以从中提取数据?

4 个答案:

答案 0 :(得分:4)

只需unserialize它。

var_dump( unserialize('a:4:{s:10:"session_id";s:32:"01a046827a00cf838a1b3ce585cc82fb";s:10:"ip_address";s:13:"124.43.56.156";s:10:"user_agent";s:120:"Mozilla/5.0 (Windows; U; Windows NT 6.2; en-US) AppleWebKit/533.20.25 (KHTML, like Gecko) Version/5.0.4 Safari/533.20.27";s:13:"last_activity";i:1371099813;}'));

答案 1 :(得分:4)

这是一个序列化的字符串,只需调用unserialize

$array = unserialize($string);

然后你把它作为数组返回:

Array
(
    [session_id] => 01a046827a00cf838a1b3ce585cc82fb
    [ip_address] => 124.43.56.156
    [user_agent] => Mozilla/5.0 (Windows; U; Windows NT 6.2; en-US) AppleWebKit/533.20.25 (KHTML, like Gecko) Version/5.0.4 Safari/533.20.27
    [last_activity] => 1371099813
)

答案 2 :(得分:1)

我认为它是一个序列化数组。使用unserialize并将其变为变量。

$arr = unserialize($str);

答案 3 :(得分:1)

使用unserialize将序列化字符串转换为数组

   $arr = unserialize($string);

   print_r($arr) //will display you the array values