Возвращение значений из ваших функций в PHP было кратко описано в предыдущем разделе; в этом разделе дана информация о деталях. Return-значения передаются через переменную return_value, которая передаётся в вашу функцию как аргумент. Аргумент return_value состоит из zval-контейнера (см. ранее обсуждение интерфейса вызова), который вы можете модифицировать. Этот контейнер всегда размещается самостоятельно, поэтому вам не нужно запускать в нём MAKE_STD_ZVAL. Вместо этого вы можете выполнять прямой доступ к его членам.
Чтобы облегчить возвращение значений из функций и предотвратить нестыковки при доступе к внутренним структурам zval-контейнера, имеется набор предопределённых макросов (как всегда). Эти макросы автоматически устанавливают соответствующие тип и значение, как описано в Таблицах 9.14 и 9.15.