Php 语法错误第0行,第349列:错误:预期为文字,Get';aS';

Php 语法错误第0行,第349列:错误:预期为文字,Get';aS';,php,database,doctrine-orm,symfony,dql,Php,Database,Doctrine Orm,Symfony,Dql,正如标题所示,我的DQL请求遇到了一个问题 以下是我的第一行,它似乎不是bug的核心: $qb = $this ->createQueryBuilder('p') ->leftJoin('p.localisation', 'loc') ->leftJoin('p.advert', 'a') ->leftJoin('a.accommodationStyle', 'aS') ->leftJo

正如标题所示,我的DQL请求遇到了一个问题

以下是我的第一行,它似乎不是bug的核心:

$qb = $this
        ->createQueryBuilder('p')
        ->leftJoin('p.localisation', 'loc')
        ->leftJoin('p.advert', 'a')
        ->leftJoin('a.accommodationStyle', 'aS')
        ->leftJoin('a.accommodationChoice', 'aC')
        ->where('loc.lat < :maxLat')
        ->setParameter('maxLat', $maxLat)
        ->andWhere('loc.lat > :minLat')
        ->setParameter('minLat', $minLat)
        ->andWhere('loc.lng < :maxLng')
        ->setParameter('maxLng', $maxLng)
        ->andWhere('loc.lng > :minLng')
        ->setParameter('minLng', $minLng)
    ;
我提供我的实体的碎片:

该广告包含以下内容:

/**
 * @ORM\ManyToOne(targetEntity="MR\PlatformBundle\Entity\AccommodationChoice", inversedBy="adverts", cascade={"persist","remove"})
 * @ORM\JoinColumn(nullable=true)
 */
private $accommodationChoice;

/**
 * @ORM\ManyToOne(targetEntity="MR\PlatformBundle\Entity\AccommodationStyle", inversedBy="adverts", cascade={"persist","remove"})
 * @ORM\JoinColumn(nullable=true)
 */
private $accommodationStyle;
住宿方式,这一种:

/**
 * @ORM\OneToMany(targetEntity="MR\PlatformBundle\Entity\Advert", mappedBy="accommodationStyle")
 */
private $adverts;
/**
 * @ORM\OneToMany(targetEntity="MR\PlatformBundle\Entity\Advert", mappedBy="accommodationChoice")
 */
private $adverts;
住宿选择,这个:

/**
 * @ORM\OneToMany(targetEntity="MR\PlatformBundle\Entity\Advert", mappedBy="accommodationStyle")
 */
private $adverts;
/**
 * @ORM\OneToMany(targetEntity="MR\PlatformBundle\Entity\Advert", mappedBy="accommodationChoice")
 */
private $adverts;
还有这个人,另一个:

/**
 * @ORM\OneToOne(targetEntity="MR\PlatformBundle\Entity\Advert", inversedBy="author", cascade={"persist","remove"})
 * @ORM\JoinColumn(nullable=true)
 */
private $advert;

我研究了关于这个主题的现有帖子,但似乎没有人对此提供帮助,提前感谢您的帮助(非常感谢)

您不能使用
aS
作为别名,因为它是保留字(
aS
)。只需选择另一个。

您不能使用
aS
作为别名,因为它是一个保留字(
aS
)。再选一个。

我把维拉改成:维拉,但那只是我在写那篇文章的时候犯的一个错误,就像那样简单。谢谢你,特林科特。记住这一点很重要。很好,就这么简单。谢谢你,特林科特。记住这一点很重要。