【问题标题】:how to execute two foreach loops simultheneously [closed]如何同时执行两个foreach循环[关闭]
【发布时间】:2014-09-13 10:59:43
【问题描述】:

这是我的两个数组。

 array 1  ::

       Array ( [0] => Array ( [questionID] => 103 [answer] => Female [answer_cnt] => 9 ) [1] => Array ( [questionID] => 103 [answer] => Male [answer_cnt] => 11 ) );

 array 2  ::

       Array ( [0] => Male [1] => Female )

我想像这样打印输出:

Female : 9
Male :11

女性和男性来自第二个数组。

你能帮帮我吗?

【问题讨论】:

  • 既然女性和男性都在第一个数组中,为什么需要循环两个数组?
  • 这毫无意义。让我们从头开始。 Male 是什么?那是一个字符串吗?一个对象?
  • 要打印的输出不需要 2 个 foreach 循环
  • 两个数组都是 MySQL 查询输出!
  • 顺便说一句 - 有些人既不是男性也不是女性

标签: php mysql arrays for-loop


【解决方案1】:

你想这样做吗?

$arr1 = Array (0 => Array ('questionID' => 103 ,'answer' => 'Female','answer_cnt' => 9 ),
1 => Array ('questionID' => 103 ,'answer' => 'Male' ,'answer_cnt' => 11 ,));

$arr2 = Array (0 => 'Male' ,1 => 'Female');

$male = $arr2[0] .':'. $arr1[1]['answer_cnt'];
$female = $arr2[1] .':'. $arr1[0]['answer_cnt'];

echo $female.'</br>';
echo $male;

【讨论】:

    【解决方案2】:

    您提到这两个数组都可以来自 MySQL 输出,因此我们假设每个数组中可能不止两行,并采用更灵活的解决方案。

    简单来说,您要做的似乎是遍历第一个数组,并根据这些值在另一个数组中的出现来回显一组有限的值。

    您可以使用foreachin_array 的组合相当简单地做到这一点。

    $answers = array(
        array(
            'questionID' => 103,
            'answer'     => 'Female',
            'answer_cnt' => 9
        ),
        array(
            'questionID' => 103,
            'answer'     => 'Male',
            'answer_cnt' => 11
        )
    );
    
    $genders = array(
        'Male',
        'Female'
    );
    
    // Loop through the answers, checking each to see if they have
    // a match in the gender array
    foreach ($answers as $answer) {
        if (in_array($answer['answer'], $genders)) {
            echo $answer['answer']. ": " . $answer['answer_cnt'] . "\n";
        }
    }
    

    输出:

    Female: 9
    Male: 11
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-06-26
      • 1970-01-01
      • 1970-01-01
      • 2014-12-05
      • 2011-03-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多