Symfony raw sql查询返回空数组

时间:2017-12-06 12:47:22

标签: symfony doctrine

当我在bindValue('id', $id)传递$ id变量时,它会显示空数组,但当我在bindValue('id', 2)中传递数字时,我会将结果输入数组。

$em = $this->getDoctrine()->getManager();
$connection = $em->getConnection();
$statement = $connection->prepare("SELECT s.subtitle FROM submenu as s where s.menu_id= :id");
$statement->bindValue('id', $id);
$statement->execute();
$results = $statement->fetchAll();
dump($results);

任何人都可以告诉我在上面的代码中我的错误。如果我在bindvalue函数中传递变量,但是如果我使用bindValue('id',2)我得到结果,那么我的结果是空的。

1 个答案:

答案 0 :(得分:0)

如果$ id是一个整数,它应该可以工作,但如果没有那么可能是你的变量中有一些空格(例如$ id ='4redtr54r') 在这种情况下,您将获得空值,因此请在分配或使用trim()函数

之前检查您的变量
$statement->bindValue('id', trim($id));