【问题标题】:How can I loop through two arrays in the same loop? [duplicate]如何在同一个循环中遍历两个数组? [复制]
【发布时间】:2015-07-11 16:08:57
【问题描述】:

我有两个这样的数组:

$array_a = array('a','b','c','d');
$array_b = array('e','f','g','h');

现在我需要以这种格式显示我的数组值:

a is e
b is f
c is g
d is h

怎么办?

【问题讨论】:

  • 你有没有尝试过?向我们展示你的尝试!
  • @Rizier123 提问者没有请求大型项目帮助。这个答案将是一段代码。他真的需要给我们看一段尝试过的片段吗?
  • @DavidGreydanus 我认为这表明他不只是想让我们做他的工作。这也表明他被困住了,无法继续前进,需要帮助。它还提高了帖子的质量。
  • @Rizier123 我需要帮助。这个问题的答案。
  • @user3246727:你的问题已经被其他人(实际上不止一个人)问过。需要答案请先搜索。

标签: php arrays loops foreach


【解决方案1】:
 foreach($array_a as $key=>$value){
     echo $value.' is '.$array_b[$key];
 }

这样试试

$key 包含第一个数组的循环中的当前键。由于您希望在同一位置显示第二个数组中的元素,因此您只需使用该键回显第二个数组中的元素

【讨论】:

    【解决方案2】:

    这应该适合你:

    只需使用array_map() 循环遍历两个数组:

    array_map(function($v1, $v2){
        echo $v1 . " is " . $v2 . "<br>";
    }, $array_a, $array_b);
    

    输出:

    a is e
    b is f
    c is g
    d is h
    

    大优势?是的,一个数组比另一个数组长没关系!

    【讨论】:

    • @user3246727 不客气! (您仍然可以将您的尝试添加到您的问题中,这会提高您的帖子质量!)
    • @user3246727 那么这个问题得到回答了吗?只要您没有接受任何答案,它在堆栈上仍然没有答案
    • 不需要回调,使用 NULL 代替 ;)
    【解决方案3】:

    也许你可能想做这样的事情:

    <?php
    $a = array('a', 'b', 'c', 'd');
    $b = array('e', 'f', 'g', 'h');
    $c = array_combine($a, $b);
    
    print_r($c);
    ?>
    

    输出

    Array
    (
    [a] => e
    [b] => f
    [c] => g
    [d] => h
    )
    

    【讨论】:

      猜你喜欢
      • 2015-11-10
      • 2012-09-29
      • 1970-01-01
      • 2013-03-07
      • 1970-01-01
      • 2020-01-14
      • 1970-01-01
      相关资源
      最近更新 更多