RedBeanPHP fetchAll只返回一行

时间:2015-02-27 06:42:46

标签: php pdo redbean

我正在调用数据库来获取一些数据。我在SQL中尝试了这个请求,它运行正常。我使用PDO编写了查询,它工作正常。但是使用具有相同查询的RedBeanPHP仅返回一个结果。

$app->get('/shoutbox/new/:msgid', function ($msgid) use ($app) {
    $messages = R::findAll('shoutbox_message', ' WHERE message_id > ? LIMIT 10', array($msgid));
    $app->response()->header('Content-Type', 'application/json');
    var_dump($messages);
    echo json_encode(R::exportAll($messages));
});

我使用var_dump($messages)来验证只返回了一条消息。

我在这里发现了类似的问题,但OP解决了这个问题而没有解释如何:sql query using redbeans php

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

您使用的R::findAll用于不想添加任何条件时使用的R::find。但是,您的查询中有WHERE条件。您想要使用 $messages = R::find('shoutbox_message', ' message_id = ? LIMIT 10', array($msgid) ); 方法。

我不确定$ msgid参数中传递的值是什么,或者生成的$ message应该包含什么,但查询看起来像这样。 {{1}}