php - Doctrine 2 的 GIS 扩展

标签 php mysql doctrine doctrine-orm gis

我想为我的 Doctrine 2 项目编写一个 GIS(地理空间数据)扩展。

我知道如何编写简单的自定义函数和类型。为了适应MySQL特殊的存储格式,我需要在检索/存储数据时使用一些SQL函数(GeomFromWKB()和AsBinary())。

我找不到一个地方可以告诉 Doctrine 2 这个。在我看来,convertToPHPValue() 和 convertToDatabaseValue() 方法不是正确的地方。

最佳答案

如果你想在 doctrine2 中调用 SQL 函数,你可以使用表达式 Func 来实现但这仅适用于 DQL。

这里有示例将告诉您如何使用未包含在 Doctrine 中的 DATE_DIFF 函数。

$qb = $repository->createQueryBuilder('l');
$qb->expr()->lte(new Doctrine\ORM\Query\Expr\Func('DATE_DIFF',array('lo.start_date', 'CURRENT_DATE()')),'0');

关于php - Doctrine 2 的 GIS 扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8367869/

相关文章:

php - 在元标记中显示动态标记

php - 没有 JavaScript 或 Cookie 的 Google Analytics

MYSQL 选择重复的行,其中重复 2 或 3 列值

mysql - 将 MySQL 数据库导入 MongoDB - 一对多关系 ID 更新

php - 登录 session 问题

doctrine-orm - "IN"带有标准过滤的谓词不起作用

php - 如何在 PHP 中使用箭头函数?

PHP:如何按字母顺序对数组的值进行排序?

mysql - 通过 Doctrine Build Task 添加 FK 关系的问题

symfony - 通过Symfony 2.1中的postUpdate监听器找出发生了什么变化