【问题标题】:PHP for loop return single value [closed]PHP for循环返回单个值[关闭]
【发布时间】:2013-01-01 16:12:13
【问题描述】:

我想让 for 循环返回单个值 (TRUE/FALSE)。但是代码返回多个值。喜欢真真真。我理解代码,但不知道怎么做。

public function user_activation_check(){
    for($i=1;$i<5;$i++){
        $query = $this->db->query("SELECT group_info.member".$i." FROM `group_info` INNER JOIN `user_student` ON group_info.member$i=user_student.email WHERE user_student.email=group_info.member$i");
        if($query->num_rows()==1){
            //return TRUE;
            echo"true";
        }else {
            //return FALSE;
            echo"false";
        }
    }
}

请帮忙。

更新:

public function member_activation(){
    if($this->model_users->user_activation_check()){
        $this->load->view('v_confirm_group');
    }else echo "Some members didn't activate their account.";
}

【问题讨论】:

  • 我呃,我不明白它如何返回多个值。根本不对。这是你的全部代码吗?
  • 一个函数每次调用只返回一个值...
  • 那你为什么用for循环?
  • 你能发布完整的功能吗?
  • 很抱歉没有发布完整的代码。这是完整的代码。

标签: php loops for-loop return-value


【解决方案1】:

使用与以下相同的数组:

     $res = array():
for($i=1;$i<5;$i++){
    $query = $this->db->query("SELECT group_........");
    if($query->num_rows()==1){
        $res[] = TRUE;
    }else {
        $res[] =  FALSE;
    }
}
return $res;

【讨论】:

  • 感谢您的回答。但这不是我想要实现的。我只希望它返回 TRUE/FALSE。不返回数组。仍在努力寻找解决方案。
【解决方案2】:

我想这就是你想要的:

public function user_activation_check(){
   for($i=1;$i<5;$i++){
        $query = $this->db->query("SELECT group_info.member".$i." FROM `group_info` INNER JOIN `user_student` ON group_info.member$i=user_student.email WHERE user_student.email=group_info.member$i");
        if($query->num_rows()==1){
            // do nothing
        }else {
            echo "false"; // *atleast* one member didn't.
            return FALSE;
        }
    }
    echo "true";
    return TRUE;
}

【讨论】:

  • 谢谢伙计!简单的解决方案!有用!正是我想要的。
【解决方案3】:

它会回显多个值,因为您正在运行一个循环。它将回显五个值,每个循环执行一个值。如果您只希望它回显一次,请使用return。一个函数可以回显多次,但它只能返回一个值。当它返回真或假时,结束函数的执行。

【讨论】:

  • 谢谢老兄的解释。
猜你喜欢
  • 2019-02-20
  • 2012-08-26
  • 1970-01-01
  • 1970-01-01
  • 2011-11-25
  • 2016-09-03
  • 1970-01-01
  • 1970-01-01
  • 2023-02-14
相关资源
最近更新 更多