PHP中unserialize() 反序列化之后得到的数组怎样获取里边的值

2025-05-20 08:55:14
推荐回答(2个)
回答(1):

header("Content-type: text/html; charset=utf-8");

$s='a:5:{i:206;a:2:{s:4:"name";s:6:"款式";i:3056;s:9:"蝙蝠衫";}i:207;a:2:{s:4:"name";s:6:"材质";i:3059;s:3:"棉";}i:208;a:2:{s:4:"name";s:6:"价格";i:3068;s:4:"0-99";}i:209;a:2:{s:4:"name";s:6:"袖长";i:3076;s:6:"长袖";}i:210;a:2:{s:4:"name";s:6:"风格";i:3088;s:6:"百搭";}}';

//序列化后的数组

$unserarr=unserialize($s);

$result=array();

foreach($unserarr as $k=>$v){

while (list($key, $val) = each($v)){

$result[$k]=array(

'name'=>$v['name'],

'value'=>$val


);

}

}

var_dump($result);

?>

//运行结果如下

回答(2):

$s=unserialize();
$res=array();

foreach($s as $k=>$v){
list($name,$value)=$v;
echo $name,'
';
$res[$k]=array(
'name'=>$name,
'value'=>$value

);

}
var_dump($res);