数组 - foreach带来 - >致命错误:不能使用类型的对象

时间:2011-09-18 19:39:01

标签: php

所以,我对这个阵列感到很生气,第二天在 * 中给我带来痛苦....

我正在开发一个OOP PHP脚本。

我得到一个数组:

Array ( [0] => Project Object ( [project_id] => 1 [title] => Some Name [date] => 2011-10-20 [place] => Some City [customer] => 1 [proj_budget] => [manager] => 1 [team] => 1 [currency] => 1 ) )

当我尝试这样做时:

<?php
    $project = new Project();
    $projects = $project->findAll();
    print_r($projects);
    foreach ($projects as $temptwo) {
      echo $temptwo['title'].", \n";
    }
?>

我得到了这个:

Fatal error: Cannot use object of type Project as array

为什么在这个世界?它对我有什么要求?

5 个答案:

答案 0 :(得分:9)

您可以将这些项目作为数组

进行访问
echo $temptwo['title'].", \n";

您可能想要访问其属性

echo $temptwo->title.", \n";

答案 1 :(得分:5)

那是因为你正在循环一个对象数组,所以你的数组中的每个项都是一个你需要作为对象来处理的对象。

foreach($projects as $temptwo){
    echo $temptwo->title;
}

答案 2 :(得分:2)

它希望您将对象用作对象,而不是数组。

    echo $temptwo->title . ", \n";

答案 3 :(得分:2)

尝试使用:

echo $temptwo->title.", \n";

代替。

答案 4 :(得分:1)

您尝试获取对象的数据。它似乎是一个阵列,但事实并非如此。它是一个对象所以你必须使用

$ temptwo-&GT;标题