您好我刚刚开始使用redbeans ORM。我按照文档编写了这样的查询
$thebean=R::find("users","id>2");
然后我循环通过: -
foreach($thebean as $bean){
echo $bean->username;
}
但是我发现如果即使users表包含100多个数据,上面的查询也只提取最后一个数据。例如:如果我有1到100的用户。我只获得id = 100的用户。有人可以告诉我我可能做错了什么。
答案 0 :(得分:3)
可能是你的语法不正确吗?我没有Redbean的经验,但你可能想做这样的事情:
$users = R::find('users', 'id > ?', array('2'));
var_dump($users);
无论哪种方式,当您执行以下操作时,您的结果是什么?它会返回所有用户还是只返回一个用户?
$users = R::find('users');
var_dump($users);
答案 1 :(得分:2)
似乎这是id字段的问题。使用tableformatter选项解决了它。
答案 2 :(得分:2)
您必须在查询中使用“findAll”。例如:
$thebean = R::findAll('users', 'id > 2' array('id' => 2));
然后你可以做你的标准foreach:
foreach ($thebean as $key => $bean) {
echo $bean->username;
}
答案 3 :(得分:1)
可能是字段类型的问题?您是否尝试过:$thebean=R::find("users","id>'2'");
?