有PHP语法和foreach的问题

时间:2009-11-11 23:12:17

标签: php

获得警告:在第41行的/home/maxer/domains/x/public_html/x/items.php中为foreach()提供的参数无效

第41行是foreach

$items = getUserList($user,0,100);

foreach($items as $item){

    echo "<img src=\"".$item['image']."\">"; //image
    echo ""; //title
    echo ""; //button for add to list

}

2 个答案:

答案 0 :(得分:4)

这意味着$items不是数组或者没有实现Traversable 。如果你提供的东西不是数组而且没有实现Traversable foreach,那么它会抱怨这条消息。将getUserList的结果转换为数组或检查它是否为1。

$items = (array)getUserList($user,0,100);

或类似的东西:

$items = getUserList($user,0,100);

if (!is_array($items)) {
    // error
} else {
    foreach ($items …) {
        // …
    }
}

答案 1 :(得分:3)

你的函数getUserList没有返回数组 确保$ items是这样的数组写:

$items = (array) getUserList($user,0,100);