0

<tr>メイン カテゴリのすべての最後にクラスを追加したいと考えています。クラス名をすべてに追加したくありません<tr>。スクリプトで何を変更できますか?

このような:

    <table>
    <tr>
    <th></th>
    </tr>
    <tr>
    <td></td>
    </tr>
    <tr class="test">
    <td></td>
    </tr>

<th></th>
<tr>
<td></td>
</tr>
<tr class="test">
    <td></td>
    </tr>
</table>


 <table class="data forum">   

        <? foreach ($this->mainCategories as $mainCategory): ?>
            <tr>
                <th><strong><?= $this->escape($mainCategory->fcName) ?></strong></th>
                <th>&nbsp;</th>
                <th><strong>Topics</strong></th>
                <th><strong>Laatste topic</strong></th>
             </tr>
             <? foreach ($mainCategory->getSubCategories() as $category): ?>

                <tr>
                    <td><a href="<?= $this->url(array('categoryid' =>  $this->escape($category->getID()), 'controller' => 'forum', 'action' => 'subcategory'), 'default', true) ?>"><?= $this->escape($category->getName()) ?></a></td>
                    <td><?= $this->escape($category->fcDescription) ?></td>
                    <? if ($this->escape($category->numTopics) > 0): ?>
                        <td><?= $this->escape($category->numTopics) ?></td>
                        <td><?= date_create($this->escape($category->last_topic))->format('d-m-Y H:i') ?></td>
                    <? else: ?>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                    <? endif ?>
                </tr>
             <? endforeach ?>
            <tr>
                <td class="split"></td>
            </tr>

         <? endforeach ?>

 </table>
4

1 に答える 1

1

変数のcount$this->mainCategories取得し、カウンター変数に対して最後の変数をテストします...

$count = count($this->mainCategories;
$current = 0;

<?
    foreach ($this->mainCategories as $mainCategory):
        $current++;
?>
    <tr<?= $current == $count?' class="someClass"':''?>>

アップデート:

概念実証として単純化されたバージョンを見てみましょう。

<?php
$mainCategories = array("Eins", "Zwei", "Drei");

$count = count($mainCategories);
$current = 0;

    foreach ($mainCategories as $mainCategory):
    $current++;
?>
    <tr<?= $current == $count?' class="someClass"':''?>>
        <td><?= $mainCategory ?></td>
    </tr>
<?php endforeach ?>

これにより、次の HTML が生成されます。

<tr>
    <td>Eins</td>
</tr>
<tr>
    <td>Zwei</td>
</tr>
<tr class="someClass">
   <td>Drei</td>
</tr>
于 2012-12-16T02:11:20.023 に答える