Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.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 MySQL:按if语句选择奇数行_Php_Jquery_Mysql_Mysqli - Fatal编程技术网

Php MySQL:按if语句选择奇数行

Php MySQL:按if语句选择奇数行,php,jquery,mysql,mysqli,Php,Jquery,Mysql,Mysqli,我在我的网站上有一个简短的MySQL查询: ... for($i=0;$i<$sql->getRows();$i++) { $id = $sql->getValue("id"); $name = $sql->getValue("name"); } 。。。 对于($i=0;$igetRows();$i++){ $id=$sql->getValue(“id”); $name=$sql->getValue(“name”); } 有没有办法通过if语句获取查

我在我的网站上有一个简短的MySQL查询:

...

for($i=0;$i<$sql->getRows();$i++) {
    $id = $sql->getValue("id");
    $name = $sql->getValue("name");
}
。。。
对于($i=0;$igetRows();$i++){
$id=$sql->getValue(“id”);
$name=$sql->getValue(“name”);
}
有没有办法通过if语句获取查询中的每一个奇数行(第二行!)

e、 g

($i=0;$igetRows();$i++)的
{
$id=$sql->getValue(“id”);
$name=$sql->getValue(“name”);
如果(行=奇数){
//做点什么
}否则{
//做点别的
}
}

假设奇数是一个数字,当它被2除时不能返回整数,您可以尝试以下方法:

/**
 * 
 * @param int $rowNumber
 * @return bool event number
 */
function isEven($rowNumber){
    $r = $rowNumber/2;
    return ctype_digit((string) $r);  
}

for($i=0;$i<$sql->getRows();$i++){

    if(isEven($i)){
        //do even code access the rowdata with ro
    }
    else{
        //do odd code
    }    
}

您是如何定义奇数行的?表中第二行可能重复。您的代码似乎没有多大意义。我假设一个名为
getRows()
的方法将从查询中获取所有结果集,但是您没有处理结果数组您正在每行递增两次
$i
,并且
isEven
函数可以是
返回$rowNumber%2==0
。啊,是的,我的错,我最初在foreach循环中使用了它,所以是手动递增的。当我把它改回for循环时,我忘了删除那个增量
/**
 * 
 * @param int $rowNumber
 * @return bool event number
 */
function isEven($rowNumber){
    $r = $rowNumber/2;
    return ctype_digit((string) $r);  
}

for($i=0;$i<$sql->getRows();$i++){

    if(isEven($i)){
        //do even code access the rowdata with ro
    }
    else{
        //do odd code
    }    
}
/**
 * 
 * @param int $rowNumber
 * @return bool event number
 */
function isEven($rowNumber){
    return $rowNumber % 2 == 0;
}