我有动态创建的自定义字段。我从这些字段中获取数据并将其作为具有update_post_meta
的数组存储到数据库中。它作为序列化数组存储在数据库中:
a:4:{i:1;s:4:"1993";i:2;s:4:"1994";i:3;s:4:"1995";i:4;s:4:"1996";}
现在我需要获取此数组并在网站上回显它,所以它看起来像:4个孩子(1993,1994,1995,1996)。
这是我现在使用的代码,但它不起作用。
<?php
$children = get_post_custom_values('rbchildyear');
foreach ($children as $key => $value){
echo "$key => $value('rbchildyear')<br>";
}
?>
这就是我在前台所得到的:
0 => a:4:{i:1;s:4:"1993";i:2;s:4:"1994";i:3;s:4:"1995";i:4;s:4:"1996";}('rbchildyear')
那我怎么能这样做?
谢谢!
答案 0 :(得分:2)
使用unserialize()。
$children = unserialize('a:4:{i:1;s:4:"1993";i:2;s:4:"1994";i:3;s:4:"1995";i:4;s:4:"1996";}');
print_r($children);
这将返回数组
答案 1 :(得分:0)
如果使用get_post_meta,它将返回一个值数组(数字索引)。然后,您可以使用foreach遍历数组。
$childYears = get_post_meta($post_id, "rbchildyear", true);
foreach($childYears AS $theYear)
{
$printThis .= $theYear.",";
}
print count($childYears)." children ( ".$printThis." )";