0

您好,我正在使用 wordpress 创建一个电影博客。我使用带有自定义文本框的序列化数据创建了电视剧集。我的问题是,当我对数据进行反序列化时,我希望它显示季节、剧集编号和情节。但是,由于多集将具有相同的季节,我不希望重复的季节编号显示多次。我使用 if 语句来完成这项工作;但是有时我会得到重复的季节,就好像它是完全相同的两个不同的数字一样。为了确保空格或任何东西不是人为错误,我使用带有数字的列表框输入季节编号。不幸的是我仍然有这个问题。

foreach ($data as $item):
 if ($item['season']  !== $old_season) {
       echo  '<ul class="panel"><h2 class="title">Season '. $item['season'].'</h2>'.     
             '<li><h2>'.stripslashes(base64_decode($item['title'])).'</h2>'; $old_season = $item['season'];} 
           echo         '<p>Episode'. $item['number']. 'Aired'.stripslashes(base64_decode($item['airdate'])).'</p>'
                   .'<p>'.stripslashes(base64_decode($item['plot'])).'</p></li>'; 
 endforeach

任何帮助都感激不尽!

4

1 回答 1

2

在这种情况下,您所要做的就是对 $data 数组进行排序,您在那里的代码就可以正常工作。

if ($item['season']  !== $old_season) {
       echo  '<ul class="panel"><h2 class="title">Season '. $item['season'].'</h2>'.     
             '<li><h2>'.stripslashes(base64_decode($item['title'])).'</h2>';
       $old_season = $item['season'];
}

问题是这里的代码:

$old_season = $item['season'];

因为它只适用于顺序元素。

于 2012-04-19T06:21:25.707 回答