Как переопределить время ожидания php.ini для функциональности imap_timeout с помощью защищенных серверов POP3 - PullRequest
8 голосов
/ 11 мая 2011

В библиотеке PHP IMAP нет встроенных способов изменить функцию imap_timeout для безопасных соединений pop3.Я хочу создать эту функцию, чтобы установить время ожидания для соединений для защищенных серверов pop3 на 1 секунду, но я просто не уверен, с чего бы начать изучать переопределение команды php.ini внутри функции PHP.Есть идеи?

imap_timeout (1,) отлично работает для подключений pop3, , но, очевидно, не для подключений pop3s (ssl, порт 995) , где по-прежнему применяется время ожидания сокета по умолчанию.Это относится к php 4.3.10, который не тестировался в других версиях.


Мы изучили источник, чтобы узнать, что эта функция на самом деле делает и как ее использовать. Функция переопределяет настройку default_socket_timeout из вашего файла php.ini

Вы можете получить текущую длительность тайм-аута для каждого типа тайм-аута, вызвав функцию следующим образом:

imap_timeout (timeout_type);или imap_timeout (timeout_type, -1);

Вы можете установить длительность тайм-аута для любого из типов тайм-аутов, установив значение тайм-аута в количестве секунд.

imap_timeout (timeout_type,);

Типы времени ожидания следующие:

1: Открыть 2: Чтение 3: Запись 4: Закрыть

Не похоже, что тип закрытия был реализован.

Источник: https://students.kiv.zcu.cz/doc/php5/manual/cs/function.imap-timeout.php.html

1 Ответ

5 голосов
/ 06 сентября 2013

используйте default_socket_timeout

, это небольшая демонстрация для переопределения конфигурации по умолчанию.

ini_set('default_socket_timeout', 2);
// your socket based code here

// restore to the default socket timeout
ini_restore('default_socket_timeout');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...