在php中使用foreach语句处理数组


handling an array with foreach statement in php

大家好,我有一个这样的数组

print_r($grouparray);
Array
(
    [0] => Array
        (
            [0] => 1
            [1] => new group 1
            [2] => 100
            [3] => 1000
            [4] => group description
            [5] => #000000
        )
    [1] => Array
        (
            [0] => 2
            [1] => new group 2
            [2] => 1000
            [3] => 2000
            [4] => group description
            [5] => #ff0000
        )
)

现在我只允许写foreach语句,我这样做了:

        foreach ((array)$grouparray AS $groups => $group) {
            echo $group[1]."<br>";
        }

,我希望输出是这样的:

 new group 1
 new group 2

它适合我:

$grouparray [] = array (
    1, 'new group 1', description); 
$grouparray [] = array (
    2, 'new group 2', description); 

print_r($grouparray);
foreach ($grouparray as $groups=>$group) {
    echo $group[1]."'r'n";
}

输出是:

Array
(
    [0] => Array
        (
            [0] => 1
            [1] => new group 1
            [2] => description
        )
    [1] => Array
        (
            [0] => 2
            [1] => new group 2
            [2] => description
        )
)
new group 1
new group 2

我的观点是"新组1"是没有被你分配给任何对象。检查它!

foreach ($grouparray as $group) {
    echo $group[1] . "<br />";
}

在你的代码中有一些事情需要纠正:

  1. 你不需要为你的数组进行类型转换,它已经是一个数组了。
  2. 因为你是在寻找值,而不是键,你可以忽略它。
这给了我们下面的代码:
foreach ($grouparray as $group) {
    echo $group[1] . "<br />";
}