From 8503c1247f1a508265fec3760cdbbbbe8639ad8f Mon Sep 17 00:00:00 2001 From: Darien Hager <darien+github@technofovea.com> Date: Wed, 15 Jul 2015 18:58:18 -0700 Subject: [PATCH] Document return-value substitution in EntityManager::transactional() --- docs/en/reference/transactions-and-concurrency.rst | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/docs/en/reference/transactions-and-concurrency.rst b/docs/en/reference/transactions-and-concurrency.rst index 4dc18318e..c012d9049 100644 --- a/docs/en/reference/transactions-and-concurrency.rst +++ b/docs/en/reference/transactions-and-concurrency.rst @@ -98,6 +98,13 @@ functionally equivalent to the previously shown code looks as follows: $em->persist($user); }); +.. warning:: + + For historical reasons, ``EntityManager#transactional($func)`` will return + ``false`` whenever the return value of ``$func`` is loosely false. + Some examples of this include ``array()``, ``"0"``, ``""``, ``0``, and + ``null``. + The difference between ``Connection#transactional($func)`` and ``EntityManager#transactional($func)`` is that the latter abstraction flushes the ``EntityManager`` prior to transaction