0

div 内の 4 つの親指 (extraimage) ごとにエコーするように、このコードを変更する必要があります...

私はStackoverflowで検索しましたが、すべての回答はカウンターの設定について語っています.extraimagesをすでにカウントしているカウンターを使用して(可能であれば)これを避けたい..条件付きと同じくらい簡単だと思います

if counter extraimages==3 echo div ..しかし、どうすれば 0 に戻ることができますか、またはこれを行う方法を誤解している可能性があります..

これは、配列が設定され、for each が設定されるコードの部分です。

<?php if($extraimagecount >0){?>
<?php foreach ($extraimage as $key=>$value){?>



<?php }?>


<?php }?>

<a href="<?php echo DATA_DIR."/".$id."/".$this->get_variable('firstimage');?>" >
    <img src="<?php echo DATA_DIR."/".$id."/".$this->get_variable('firstimage');?>" class="minis"/>
</a>



<?php if($extraimagecount >0){
$rotate=1;
$tumppr=0;

?>
<?php foreach ($extraimage as $key=>$value){

$rotate=$rotate+1;
?>



<a href="<?php echo DATA_DIR."/".$id."/".$value['image'];?>" >
    <img src="<?php echo DATA_DIR."/".$id."/t_".$value['image'];?>" class="minis"/>
</a>



<?php 



if($rotate==8)
{
    $rotate=0;
    $tumppr=$tumppr+1;

    ?>




    <?php 

}
?>

<?php }?>


<?php }?>
</div>


<?php 


 $lftstr="";
 $rgtstr="";
if($extraimagecount >0)
{
$extcnt=count($extraimage); 
$extcntnew=$extcnt+1;

 $extdivide=intval(($extcntnew/8));
 $extmode=($extcntnew % 8);


for($i=0;$i<$extdivide;$i++)   //************ For Right Arrow ***************/
{
?>
    <div id="rgt_<?php echo $i;?>" class="rgt" <?php if($i >0 || $extmode ==0){?>style="display: none;"<?php }?>  ><img class="rgtimg" src="images/rnext.png"></div>
<?php 
    $rgtstr=$rgtstr.$i.'_';
}

for($ii=1;$ii<$extdivide;$ii++)   //************ For left Arrow ***************/
{
    ?>
    <div id="lft_<?php echo $ii;?>" class="lft" style="display: none;" ><img class="lftimg" src="images/lnext.png"></div>
    <?php

    $lftstr=$lftstr.$ii.'_';


}

if($extmode >0)
{
?>
    <div id="lft_<?php echo $extdivide;?>" class="lft" style="display: none;" ><img class="lftimg" src="images/lnext.png"></div>

<?php 

    $lftstr=$lftstr.$extdivide.'_';
}

}
?>
4

1 に答える 1

1

実際には非常に簡単です。% 演算子を使用します。a%b は、a/b の残りを返します。使い方はこちら

for($i=0;$i<9;$i++)
{
    echo $i%3." ";
}

これにより、0 1 2 0 1 2 0 1 2が出力されます

これを使用して、ケースで 4 つのグループを作成できます。

于 2013-06-01T22:37:43.947 に答える