我要做的是从序列化数据中获取数据。我得到了它输入电源名称的地方,但我想要做的就是让它显示在用户是否有电源的地方。
这是序列化数据
a:1:{s:6:"powers";a:1:{s:7:"profile";a:1:{s:3:"has";b:0;}}}
尝试获取has
部分数据,但它只是获得权力的名称。
PHP代码
foreach ($c['powers'] as $a => $b) {
echo $a;
}
$c['powers']
是序列化数据的开头,如您所见s:6:"powers"
答案 0 :(得分:0)
让我们看看它看起来如何反序列化:
var_export(unserialize('a:1:{s:6:"powers";a:1:{s:7:"profile";a:1:{s:3:"has";b:0;}}}'));
输出:
array (
'powers' =>
array (
'profile' =>
array (
'has' => false,
),
),
)
所以'has' => false
不是c['powers']
的元素,而是$c['powers']['profile']
的元素
答案 1 :(得分:0)
$coded = 'a:1:{s:6:"powers";a:1:{s:7:"profile";a:1:{s:3:"has";b:0;}}}';
$decoded = unserialize($coded);
$has = $decoded['powers']['profile']['has'];
var_dump($has);