-2

INT が特定の数値のみに等しいかどうかを計算するために、PHP に if ステートメントが必要です。パターンは次のようになります: 3、5、8、10、13、15、18、20 など。3 を追加し、次に 2 を繰り返します。パターンは最後の数字 (3,5,8,0) と一致していますが、最初の 0 は含めたくありません。

私はこのようにそれを行うことができましたが、それは永遠に続く可能性があります...

if($int == 3 || $int == 5 || $int == 8 || $int == 10 ....)
{
    //do stuff
}

この方法は3の倍数も行います...

if ($int % 3 == 0)
{
    //do stuff
}

しかし、私が望むパターンをしません。これを行う正しい方法は何ですか?

4

2 に答える 2

4

このようにできます。

10 で割った余りを取得し、0、3、5、または 8 をチェックします。

if ($int > 0) {
  $int = $int % 10;
  if ($int == 0 || $int == 3 || $int == 5 || $int == 8)
  {
      //do stuff
  }
}
于 2013-09-06T18:09:09.243 に答える
0
function check($t) {
    $mod = $t % 10;
    if ($mod == 0 || $mod == 3 || $mod == 5 || $mod == 8)
        echo $t;
}
$arr = array(3, 6, 8, 10, 20, 13, 15, 19);
array_map('check', $arr);
于 2013-09-06T18:09:41.710 に答える