Hola. Les comento a ver si me puedo explicar.
Genero una consulta con el getRepository que me da un
Código:
$Productos= $query->getResult();
de multiples objetos de la entidad consultada.
Con el siguiente código intento obtener un filtro con criterias
Código PHP:
public function getProductoById($IdProducto,$Productos)
{
$criteria = Criteria::create();
$criteria->where(Criteria::expr()->eq('id', $IdProducto));
return $Productos->matching($criteria);
}
Pero me marca el siguiente error:
Error: Call to a member function matching() on a non-object
Ahora esto se soluciona si realizo algo así.
Código PHP:
$CollectionProd=new ArrayCollection();
foreach($Productos as $producto){
$CollectionProd->add($producto);
}
public function getProductoById($IdProducto,$CollectionProd)
{
$criteria = Criteria::create();
$criteria->where(Criteria::expr()->eq('id', $IdProducto));
return $Productos->matching($criteria);
}
Me pregunto hay alguna otra forma de que el resultado de la consulta ya me arroje un objeto ArrayCollection ?
Saludos