dev-master
9999999-dev https://github.com/IAkumaI/doctrine-functionsDoctrine DQL Functions for Mysql
MIT
The Requires
- php >=5.3.3
by Valery Ozarnichuk
database mysql dql
Doctrine DQL Functions for Mysql
This package contains some doctrine functions, (*1)
INSTR(exp1, exp2)
- documentation
FIELD(exp1, exp2, exp3, exp4...)
- documentation
DATE_FORMAT(field, '%format%')
- documentation
DATE(field)
- documentation
RAND()
- documentation. Remember, you can not use parameters in this function.RANDP(12345)
- documentation. This is still RAND() MySQL function, but you must use a number parameter in it.Just add the package to your composer.json
, (*2)
{ "require": { "iakumai/doctrine-functions": "dev-master" } }
According to the Doctrine documentation you can register the functions in this package this way., (*3)
<?php $config = new \Doctrine\ORM\Configuration(); $config->addCustomDatetimeFunction('instr', 'IAkumaI\DQL\Str\Instr'); ?>
With symfony 2 you can register yout functions in the config.yml
file., (*4)
doctrine: orm: entity_managers: default: dql: datetime_functions: instr: IAkumaI\DQL\Str\Instr
Simple example, usage a DateFormat function:, (*5)
createQuery("SELECT DATE_FORMAT(e.date, '%d.%m.%Y') as df FROM YourBundle:Ent e"); ?>
This way you can use DQL function in ORDER statement. For example, order by RAND():, (*6)
createQuery("SELECT e, RAND() as HIDDEN rand FROM YourBundle:Ent e ORDER BY rand"); ?>
Doctrine DQL Functions for Mysql
MIT
database mysql dql