Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如果INT等于3,5,8,10,13,15(等)_Php_If Statement - Fatal编程技术网

Php 如果INT等于3,5,8,10,13,15(等)

Php 如果INT等于3,5,8,10,13,15(等),php,if-statement,Php,If Statement,我想在PHP中有一个if语句来计算INT是否只等于某些数字。这个模式是这样的: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 stu

我想在PHP中有一个if语句来计算INT是否只等于某些数字。这个模式是这样的: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
}

但不是我想要的样式。做这件事的正确方法是什么?

你可以这样做

将除法的余数乘以10,然后检查0、3、5或8

if ($int > 0) {
  $int = $int % 10;
  if ($int == 0 || $int == 3 || $int == 5 || $int == 8)
  {
      //do stuff
  }
}

你不能简单地检查最后一个字符是3、5、8还是0,如果while是0就忽略它吗?或者甚至
if(在数组中($int%10,数组(0,3,5,8)){…}
if($int>0)应该在余数计算之前。谢谢!我只想要一个if语句。我在检查余数时创建了一个新变量($new_int=$int%10),并将旧变量添加到相同的if语句($int>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);