/** * Converts PHP representation to the SQL value. * * @param Point $value specific point * @param AbstractPlatform $platform DB platform * * @return string */ public function convertToDatabaseValue($value, AbstractPlatform $platform) { if (!$value) { return; } return sprintf('(%F,%F)', $value->getLatitude(), $value->getLongitude()); }
/** * Converts PHP representation to the SQL value. * * @param Point $value specific point * @param AbstractPlatform $platform DB platform * * @return string */ public function convertToDatabaseValue($value, AbstractPlatform $platform) { if (!$value) { return null; } if ($platform instanceof MySqlPlatform) { $format = "POINT(%F %F)"; } else { $format = "(%F, %F)"; } return sprintf($format, $value->getLatitude(), $value->getLongitude()); }
public function findByDistanceQB(Point $point, $distanceMax) { return $this->createQueryBuilder('e')->andWhere('DISTANCE(e.location, :latitude, :longitude) <= :distanceMax')->setParameter('latitude', $point->getLatitude())->setParameter('longitude', $point->getLongitude())->setParameter('distanceMax', $distanceMax); }