繁体   English   中英

反序列化数据库数据

[英]Unserialize data of database

如何对序列化存储在数据库中的数据进行反序列化?
请举个例子。

$result = array();
foreach ($upload_data as $file) {
  $result[] = $file['file'];
}
$insert_to_database = serialize($result);
//This inserted in database, I want unserialize this output
output: a:2:{i:0;s:55:"Chrysanthemum18.jpg";i:1;s:48:"Desert18.jpg";} 

使用unserialize()

$var = array('a', 'b', 'c');
$var = serialize($var);
var_dump($var); // string(42) "a:3:{i:0;s:1:"a";i:1;s:1:"b";i:2;s:1:"c";}"
$var = unserialize($var);
echo $var[0]; // 'a'

假设您使用CI AR检索序列化的数据...

$qry = $this->db->select('your_serialized_field')
                 ->from('some_table')
                 ->get();
$serialized_data = $qry->result_array();
$unserialized_data = array();
// Then for every record...
foreach($serialized_data as $single_record)
{
   $unserialized_data[] = unserialize($single_record);
}
// You now can see your array
var_dump($unserialized_data);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM