首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从分块数组返回唯一值

从分块数组返回唯一值
EN

Stack Overflow用户
提问于 2013-02-13 08:02:59
回答 2查看 70关注 0票数 0

我有一个输出到文本文件的日历脚本。我打开文本文件,将其读入数组,然后输出结果。文本文件包含:

代码语言:javascript
复制
7/9/2013-7/13/2013
Hot Stuff
By Robert More. Yes, folks, it's all platform shoes, leisure suits..
hotstuff.jpg
1,1,0,
*-*
7/16/2013-7/20/2013
Hot Stuff
By Robert More. Yes, folks, it's all platform shoes, leisure suits.. 
hotstuff.jpg
1,1,0,
*-*

我的PHP代码如下所示:

代码语言:javascript
复制
$content = file('DC_PictureCalendar/admin/database/cal2data.txt');
$content_chunked = array_chunk($content, 6);
            if (count($content_chunked > 0))
            {
                echo "<table>";
                for ($i=0;$i<count($content_chunked);$i++)
                {
                    echo "<tr>";
                    echo "<td valign='top'>";
                    echo "<div style='padding-top:6px;'>";
                    echo "<a href='schedule.php'>";
                    echo "<img src='DC_PictureCalendar/admin/database/images/".$content_chunked[$i][3]."' width='80' height='80' border='2'>";
                    echo "</a>";
                    echo "</div>";
                    echo "</td>";
                    echo "<td valign='top'>";
                    echo "<div style='padding-left:5px;'>";
                    echo "<table>";
                    echo "<tr>";
                    echo "<td>";
                    echo "<h2>";
                    echo "<a href='schedule.php'>";
                    echo $content_chunked[$i][1];
                    echo "</a>";
                    echo "</h2>";
                    echo "</td>";
                    echo "</tr>";
                    echo "<tr>";
                    echo "<td>";
                    echo $content_chunked[$i][2];
                    echo "<a class='green' href='schedule.php'>";
                    echo "Read more..";
                    echo "</a>";
                    echo "</td>";
                    echo "</tr>";
                    echo "</table>";
                    echo "</div>";
                    echo "</td>";
                    echo "</tr>";
                }
                echo "</table>";
            }

问题是,如果$content_chunked$i中有重复的条目(在本例中是标题),我只想显示一次,而不是两次。这个是可能的吗?我认为array_unique可能会起作用,但它似乎没有帮助。提前感谢!

EN

回答 2

Stack Overflow用户

发布于 2013-02-13 08:26:55

array_unique()返回没有重复的数组,但不修改原始数组!

所以:

代码语言:javascript
复制
$a = [1, 1, 2, 3]
array_unique($a) => [1, 2, 3]
$a => [1, 1, 2, 3]

新数组需要保存在一个变量中,以便您以后访问它。

代码语言:javascript
复制
$a = [1, 1, 2, 3]
$b = array_unique($a)
$b => [1, 2, 3]
票数 0
EN

Stack Overflow用户

发布于 2013-02-13 08:28:07

虽然它可能不是最优雅的/高效的..在相关位置添加以下内容:

代码语言:javascript
复制
echo "<table>";
$titles = array();
for ($i=0;$i<count($content_chunked);$i++)
{
      if (in_array($content_chunked[$i][1], $titles)) continue;
      $titles[] = $content_chunked[$i][1]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14844187

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档