代码之家  ›  专栏  ›  技术社区  ›  Ryaner

PHP数组中元素的引用

  •  2
  • Ryaner  · 技术社区  · 15 年前

    答案不是$array[0];

    我的阵列设置如下

    $array = array();
    $array[7] =  37;
    $array[19] = 98;
    $array[42] = 22;
    $array[68] = 14;
    

    我正在对数组进行排序,并尝试在排序后获得尽可能高的匹配。所以在本例中,$array[19]=98; 我只需要98的值就可以了 总是 在数组的第一个位置。我不能使用$array[0]引用,因为0键不存在。速度限制意味着我无法通过数组循环找到最高匹配。

    也必须有比

    foreach ( $array as $value )
    {
        echo $value;
        break;
    }
    
    6 回复  |  直到 15 年前
        1
  •  4
  •   Seb    15 年前
    $keys = array_keys($array);
    echo $array[$keys[0]];
    

    或者你可以用 current() 功能:

    reset($array);
    $value = current($array);
    
        2
  •  3
  •   soulmerge    15 年前

    如果我正确理解了您的问题,您需要数组中的第一个键:

    $firstValue = reset($array);
    $firstKey = key($array);
    
        3
  •  2
  •   AlexanderJohannesen    15 年前

    你可以一直这样做;

    $array = array_values($array);
    

    现在$array[0]将是正确的答案。

        4
  •  1
  •   Kris    15 年前

    如果需要第一个元素,可以使用 array_shift ,这不会循环任何内容,只返回值。

    然而,在您的示例中,它不是第一个元素,因此您的示例/问题似乎存在差异,或者我对其的理解存在错误。

        5
  •  0
  •   cgp    15 年前

    如果要对其进行排序,可以指定自己的排序例程,并让它挑选出最大的值。 虽然 你在分类。

        6
  •  0
  •   mdcarter    15 年前
    $array = array_values($array);
    echo $array[0];