Files
cms-core/Documentation/Changelog/8.6/Feature-79262-AddPossibilityToCreateTRIMExpressionWithDoctrineDBAL.rst
T

42 lines
1.4 KiB
ReStructuredText

.. include:: /Includes.rst.txt
.. _feature-79262:
==============================================================================
Feature: #79262 - Add possibility to create TRIM expression with Doctrine DBAL
==============================================================================
See :issue:`79262`
Description
===========
The possibility to create TRIM expressions using Doctrine DBAL has been integrated.
However, when using this in comparisons, ExpressionBuilder::comparison() has to be
invoked explicitly - otherwise the created TRIM expression would be quoted if e.g.
used with ExpressionBuilder::eq().
.. code-block:: php
$queryBuilder->expr()->comparison(
$queryBuilder->expr()->trim($fieldName),
ExpressionBuilder::EQ,
$queryBuilder->createNamedParameter('', \PDO::PARAM_STR)
);
The call to :php:`$queryBuilder->expr()-trim()` can be one of the following:
* :php:`trim('fieldName')`
results in :sql:`TRIM("tableName"."fieldName")`
* :php:`trim('fieldName', AbstractPlatform::TRIM_LEADING, 'x')`
results in :sql:`TRIM(LEADING "x" FROM "tableName"."fieldName")`
* :php:`trim('fieldName', AbstractPlatform::TRIM_TRAILING, 'x')`
results in :sql:`TRIM(TRAILING "x" FROM "tableName"."fieldName")`
* :php:`trim('fieldName', AbstractPlatform::TRIM_BOTH, 'x')`
results in :sql:`TRIM(BOTH "x" FROM "tableName"."fieldName")`
.. index:: Database, PHP-API