Download the PHP package devimteam/doctrine-extensions without Composer

On this page you can find all versions of the php package devimteam/doctrine-extensions. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package doctrine-extensions

Oro Doctrine Extensions

Build Status

Table of Contents

DQL Functions

This library provide set of cross database doctrine DQL functions. Supported databases are MySQL and PostgreSQL. Available functions:

Specifier Description
%a Abbreviated weekday name (Sun..Sat)
%b Abbreviated month name (Jan..Dec)
%c Month, numeric (0..12)
%d Day of the month, numeric (00..31)
%e Day of the month, numeric (0..31)
%f Microseconds (000000..999999)
%H Hour (00..23)
%h Hour (01..12)
%I Hour (01..12)
%i Minutes, numeric (00..59)
%j Day of year (001..366)
%k Hour (0..23)
%l Hour (1..12)
%M Month name (January..December)
%m Month, numeric (00..12)
%p AM or PM
%r Time, 12-hour (hh:mm:ss followed by AM or PM)
%S Seconds (00..59)
%s Seconds (00..59)
%T Time, 24-hour (hh:mm:ss)
%W Weekday name (Sunday..Saturday)
%Y Year, numeric, four digits
%y Year, numeric (two digits)
%% A literal % character

GROUP_CONCAT full syntax:

Installation

Add the following dependency to your composer.json

Functions Registration

Doctrine2

Doctrine2 Documentation: "DQL User Defined Functions"

Symfony2

In Symfony2 you can register functions in config.yml

Silex

If you are using an ORM service provider make sure that you are adding the custom function to the configuration

for palmasev/DoctrineORMServiceProvider

for dflydev/dflydev-doctrine-orm-service-provider

Zend Framework 2

In Zend Framework 2 you can register functions in config/autoload/doctrine.global.php

Extendability and Database Support

Architecture

Most of functions, that require only one ArithmeticPrimary argument may be parsed with Oro\ORM\Query\AST\Functions\SimpleFunction. This class is responsible for parsing function definition and saving parsed data to parameters. It is extended from Oro\ORM\Query\AST\Functions\AbstractPlatformAwareFunctionNode. This layer work with DQL function parsing. SQL generation is responsibility of platform specific functions, that extends PlatformFunctionNode. AbstractPlatformAwareFunctionNode creates appropriate instance of platform function based on current connection Database Platform instance name and DQL function name.

Platform function classes naming rule is:

Adding new platform

To add support of new platform you just need to create new folder Oro\ORM\Query\AST\Platform\Functions\$platformName and implement required function there according to naming rules

Adding new function

In case when your function is function with only one ArithmeticPrimary argument you may not create DQL function parser and use Oro\ORM\Query\AST\Functions\SimpleFunction for this. Then only platform specific SQL implementation of your function is required.

In case when your are implementing more complex function, like GROUP_CONCAT both DQL parser and SQL implementations are required.

If you want to add new function to this library feel free to fork it and create pull request with your implementation. Please, remember to update documentation with your new functions. All new functions MUST be implemented for all platforms.

Field Types

This library also consist additional field types:

ObjectType and ArrayType use base64 encoded string to store values in Db instead of storing serialized strings. For backward compatibility values that are already stored in Db will be unserialized without base64 encoding. New values will be base64 encoded before storing in Db and base64 decoded before unserialization.


All versions of doctrine-extensions with dependencies

PHP Build Version
Package Version
Requires php Version >=5.3.0
doctrine/orm Version >=2.2.3
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package devimteam/doctrine-extensions contains the following files

Loading the files please wait ....