【问题标题】:Getting the key inside a PHP foreach loop in simple associative array [duplicate]在简单的关联数组中获取 PHP foreach 循环中的密钥 [重复]
【发布时间】:2015-08-27 22:24:33
【问题描述】:

经过多年的困惑,我试图掌握 PHP 数组,尤其是与 foreach 循环结合使用。

有各种类似的问题,但我真的想了解为什么这不起作用,而不是让它本身起作用(不久将在更复杂的东西中使用大量 foreach 循环和数组)。

$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"37");

有一个简单的 foreach 循环:

foreach ($age as $ages )
{
    n();n();
    echo($ages);
    n();
    $v="volvo";
    $key = key($age);
    if ($age["Ben"]==$ages)
    {
        echo "<BR><BR>Result is  $key is $ages <BR>";
    }
}

输出是:

35
37
Result is Ben is 37 
37
Result is Ben is 37 

一切都好,但我原以为姓是乔。

我认为 foreach 循环遍历每个数组值对作为 KEY VALUE 对。那么为什么我要得到 Ben 两次呢?

【问题讨论】:

    标签: php arrays foreach


    【解决方案1】:

    按以下方式使用foreachforeach ($age as $name=&gt;$personAge )

    【讨论】:

    • 感谢已经看到,但试图了解原件中发生了什么。我通过原始的 `$key = key($age). Why Ben as answer. It looped twice with value 37...On the third time the VALUE was 37 but it came from Joe... Yes I can make it work using a var =>var` 表单访问了什么,但仍然感到困惑。谢谢指点。
    猜你喜欢
    • 2012-06-15
    • 1970-01-01
    • 1970-01-01
    • 2023-03-26
    • 2014-09-23
    • 2011-04-26
    • 2013-07-18
    • 1970-01-01
    相关资源
    最近更新 更多