【发布时间】:2012-03-27 03:49:57
【问题描述】:
我遇到了一个奇怪的问题。我正在学习 PHP(用于在 Java 中编程),并且正在尝试做一件简单的事情。我有一个 DAO 方法可以做这样的事情:
while (oci_fetch($parse)) {
$stats = new Stats();
$stats->setId($id);
$stats->setName($name);
$stats->setEmail($email);
$stats->setGender($gender);
$stats->setBirthday($birthday);
$statslist[] = $stats;
}
return $statslist;
我还有另一个使用这个函数的 PHP 文件(称为 getById)作为测试,如下所示:
$statsdao = new StatsDAO();
$statslist[] = $statsdao->getById(1);
foreach ($statslist as $stat) {
echo $stat->getName();
}
这看起来很简单:DAO 返回一个数组,而我的其他文件读取返回的 Stats 数组并打印它。但是我收到了这个错误消息:
致命错误:在非对象上调用成员函数 getName() /var/www/socializi/interfaceusuario/index.php 第 25 行
奇怪的是:如果我在 DAO 的 getById 函数中调用 foreach 循环,它会打印出来,但是当我从外部调用该函数并将其分配给另一个数组时,它不会将数组的内容识别为对象。
我在这里做错了什么? 谢谢!
【问题讨论】: