我想为我的 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/