src/Repository/PageMetadataRepository.php line 33

Open in your IDE?
  1. <?php
  2. /**
  3.  * Created by simpson <simpsonwork@gmail.com>
  4.  * Date: 2019-03-29
  5.  * Time: 11:46
  6.  */
  7. namespace App\Repository;
  8. use App\Entity\SEO\PageMetadata;
  9. use Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository;
  10. use Doctrine\Persistence\ManagerRegistry;
  11. class PageMetadataRepository extends ServiceEntityRepository
  12. {
  13.     public function __construct(ManagerRegistry $registry)
  14.     {
  15.         parent::__construct($registryPageMetadata::class);
  16.     }
  17.     public function ofUri(string $uri): ?PageMetadata
  18.     {
  19.         $qb $this->createQueryBuilder('page_metadata')
  20.             ->andWhere('page_metadata.uri = :uri')
  21.             ->setParameter('uri'$uri)
  22.             ->setMaxResults(1)
  23.         ;
  24.         $query $qb->getQuery()
  25.             ->useResultCache(true)
  26.             ->setResultCacheLifetime(3600)
  27.         ;
  28.         return $query->getOneOrNullResult();
  29.     }
  30. }