1

嗨,我刚开始使用 redbeans ORM。我按照文档并尝试进行这样的查询

$thebean=R::find("users","id>2");

然后我像这样循环:-

foreach($thebean as $bean){
echo $bean->username;
}

但是我发现即使 users 表包含超过 100 个数据,上面的查询也只会获取最后一个数据。例如:如果我有 1 到 100 个用户。我只得到 id=100 的用户。有人可以告诉我我可能做错了什么。

4

4 回答 4

3

会不会是你的语法不正确?我没有使用 Redbean 的经验,但你可能想做这样的事情:

$users = R::find('users', 'id > ?', array('2'));
var_dump($users);

无论哪种方式,当您执行以下操作时,您的结果是什么?它会返回所有用户还是只返回一个用户?

$users = R::find('users');
var_dump($users);
于 2011-11-23T16:01:06.997 回答
2

似乎是 id 字段的问题。使用 tableformatter 选项解决了它。

于 2011-11-24T06:32:34.247 回答
2

您必须在查询中使用“findAll”。例如:

$thebean = R::findAll('users', 'id > 2' array('id' => 2));

然后你可以做你的标准foreach:

foreach ($thebean as $key => $bean) {

 echo $bean->username;

} 
于 2013-01-08T23:40:03.153 回答
1

可能是字段类型的问题?您是否尝试过:$thebean=R::find("users","id>'2'");

于 2011-11-23T15:47:44.897 回答