2016-10-06 9 views
0

私は、六角形3を連続して作成するループを持っていますが、行ごとに3つが使用されないと、コードに小さなバグがあります。これを回避するために、私は条件付きコードを使用して負のポジションを適用していますが、明らかに各ステップに条件を追加しないで行くことはできません。PHPの条件を簡略化

将来の校正のために以下を簡素化する方法を知っている人はいますか?条件はちょうど私が、その後2というように、その後、2に1をカウントする、あまりにもこの配列のために何かをしたいと思います3.

if($i == 3) { 
    echo ".hex-2 { left: -24.7%;}"; 
} else if($i == 6) { 
    echo ".hex-5 { left: -24.7%;}"; 
} else if($i == 9) { 
    echo ".hex-8 { left: -24.7%;}"; 
} 

の単位でチェックします。

if(in_array($i, array(1,3,4,6,7,9,10,12,13,15,16,18,19,21,22,24,25,27,28,30,31))) { echo "</div><div class='hex-wrap'>"; }; 

これは可能ですか?

答えて

0

それは間違いなく何とか美化することができますが、これは、それを行う必要があります。その後、

$numbers = []; 
    $n = 1; 
    $numbers[] = $n; 
    while ($n < 29) // Or whichever is the allowed maximum number 
    { 
     $n += 2; 
     $numbers[] = $n; 
     $n += 1; 
     $numbers[] = $n; 
    } 

をそして:

if (in_array($i, numbers)) { echo "</div><div class='hex-wrap'>"; };