PHP Conference Nagoya 2025

oci_set_call_timeout

(PHP 7.2 >= 7.2.14, PHP 8, PHP 7 >= 7.3.1, PHP 8, PECL OCI8 >= 2.2.0)

oci_set_call_timeoutУстанавливает время ожидания в миллисекундах для вызовов базы данных

Описание

oci_set_call_timeout(resource $connection, int $timeout): bool

Функция устанавливает для соединения время ожидания, которое ограничивает максимальное время, которое займёт обмен с базой данных в оба конца.

Каждая операция OCI8 выполняется ноль или более вызовов к клиентской библиотеки Oracle. Затем эти внутренние вызовы приводят к нулевому или большему количеству обращений к базе данных Oracle. Если какой-либо из этих циклических обходов занимает больше миллисекунд, чем указали в параметре time_out, операция отменяется и приложению возвращается ошибка.

Значение time_out применяется к каждому циклу по отдельности, а не к сумме всех циклов в оба конца. Время, затраченное на обработку в PHP-модуле OCI8 до или после завершения каждого циклического пути, не учитывается.

При прерывании вызова БД Oracle попытается очистить соединение для переиспользования. Эту операцию разрешается запускать в течение другого периода time_out. Будет ли соединение многоразовым, зависит от результатов очистки.

В постоянных соединениях значение времени ожидания сохраняется для каждого PHP-запроса.

Функция oci_set_call_timeout() доступна, когда модуль OCI8 использует клиентские библиотеки Oracle 18 или более поздних версий.

Список параметров

connection

Идентификатор соединения Oracle, который возвращают функции oci_connect(), oci_pconnect() или oci_new_connect().

timeout

Максимальное время одного обмена данными между PHP и базой данных Oracle в миллисекундах.

Возвращаемые значения

Функция возвращает true в случае успешного выполнения или false, если возникла ошибка.

Примеры

Пример #1 Пример установки времени ожидания

<?php

$conn
= oci_connect('hr', 'welcome', 'localhost/XE');
oci_set_call_timeout($conn, 5000);

?>

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top