Php 如何在Symfony2中显示第一个发布的需求?
我只需要展示第一次发布的需求:Php 如何在Symfony2中显示第一个发布的需求?,php,symfony,Php,Symfony,我只需要展示第一次发布的需求: $demand = $em->getRepository('DemandsBundle:Demands')->findBy(array('date' => )? 我在这个请求中遇到了一个问题,有人能告诉我如何通过findby重播数据库中的第一个请求吗 在控制器中: $entity->setCreatedAt(new\DateTime('now') 在实体中: /** * @var \DateTime * * @ORM\Column(nam
$demand = $em->getRepository('DemandsBundle:Demands')->findBy(array('date' => )?
我在这个请求中遇到了一个问题,有人能告诉我如何通过findby重播数据库中的第一个请求吗
在控制器中:
$entity->setCreatedAt(new\DateTime('now')代码>
在实体中:
/**
* @var \DateTime
*
* @ORM\Column(name="created_at", type="datetime", nullable=false)
*/
private $createdAt;
使用findOneBy
代替findBy
您可以通过date asc
将结果作为第二个参数传递给findBy函数,然后将设置限制的第一行作为第三个参数
以下是由
函数查找的函数的定义
公共函数findBy(数组$criteria,数组$orderBy=null,$limit=null,$offset=null)代码>
以下是您案例的示例:
$demand = $em->getRepository('DemandsBundle:Demands')->findBy(array(), array('date' => 'asc'), 1);
否则
您还可以使用findOneBy
函数,其中您还可以跳过limit
参数,因为它只返回一个结果
公共函数findOneBy(数组$criteria,数组$orderBy=null)代码>
小例子:
$demand = $em->getRepository('DemandsBundle:Demands')->findOneBy(array(), array('date' => 'asc'));
请尝试以下代码:
$em = $this->getDoctrine()->getManager();
$query = $em->createQuery(
'SELECT p.content , p.createdAt , p.id
FROM PublishDemandsBundle:Demands p
ORDER BY p.createdAt
'
);
$demands = $query->setMaxResults(1)->getResult();