0

PHPでいくつかのデータを表示しています。重複値をチェックするロジックを探していますが、連続した重複値のみです。

たとえば、現在、コンサートで演奏された音楽のリストにこれが表示されています。

ベートーヴェン 交響曲第9番
- パート1

ベートーヴェン 交響曲第9番
- パート2

マーラー交響曲
第1部

ベートーヴェン 交響曲第9番
- 第4部

代わりに、前のアイテムのタイトルと一致する場合にタイトルを繰り返さないように、このように読みたいと思います。ただし、前のアイテムと同じでない場合は、タイトルが再度表示されます。

ベートーヴェン 交響曲第9番
- 第1
部 - 第2部

マーラー交響曲
第1部

ベートーヴェン 交響曲第9番
- 第4部

助けてくれてありがとう!

4

2 に答える 2

0

シンフォニーオブジェクトのリスト$musicListがあるとします。各アイテムには、タイトルと部品番号のプロパティがあります。

$previousTitle = 0;
foreach ($musicList as $item) {
  if ($item->title != $previousTitle) {
    print $item->title;
  }
  print "- " . $item->partNumber;

  $previousTitle = $item->title;
}
于 2010-12-09T21:32:07.523 に答える
0

最後に印刷したコンサート名を変数に保存するだけで、それぞれを印刷するときに現在のコンサート名と比較できます。等しい場合は何も出力せず、等しくない場合は変数を更新して新しいコンサート名を出力します。

while ($row = mysql_fetch_array($result_resource)) {

    if (!isset($last) || $last != $row['concert_name']) {
        $last = $row['concert_name'];
        echo "<h1>" . $row['concert_name'] . "</h1>";
    }
    echo $row['song_name'] . "<br />";

}
于 2010-12-09T21:32:17.637 に答える