Alternative to foreach() PHP?


Alternative to foreach() PHP?

我对PHP还是很陌生,从周围的所有示例来看,它们似乎都使用了foreach语句。

foreach ($variable as $row)

然而,我不认为我应该使用这个所有的时间,例如变量或对象,我有一个只有一行或一个数组实例。

我知道在多行中使用它们是有利的,如果使用for循环,可能会错过。

但是我真的需要用它来回显数组中的一个变量吗?

。例如这个变量$stats

array(3) { ["user_interventions"]=> int(4) ["fastest_intervention"]=> array(1) { [0]=> object(stdClass)#22 (1) { ["duration"]=> string(8) "02:10:00" } } ["slowest_intervention"]=> array(1) { [0]=> object(stdClass)#23 (1) { ["duration"]=> string(8) "02:26:00" } } } 

谢谢

如果你知道数组中值的地址,那么就不需要循环了:

echo $arr['user_interventions'][0]['duration']; // 02:10:00

不,您不需要在每次需要访问数组值时使用foreach循环。您的示例可以按以下方式使用…

echo $stats['fastest_intervention']['0']->duration; // Outputs: 02:10:00

这是你的变量转储与缩进(使它更容易阅读)。

array(3) {
    ["user_interventions"]=> int(4)
    ["fastest_intervention"]=> array(1) {
        [0]=> object(stdClass)#22 (1) {
            ["duration"]=> string(8) "02:10:00"
        }
    }
    ["slowest_intervention"]=> array(1) {
        [0]=> object(stdClass)#23 (1) {
            ["duration"]=> string(8) "02:26:00"
        }
    }
} 

这里不需要使用foreach,但不能只使用print $array

如果你是数组的索引,你可以打印如下内容:

print 'Key is '.$array['key'].' but index is only'.$array['index'];

您只需使用[]访问变量。print $array['key']