imap_timeout(1, <seconds>) works fine for pop3 connections, but apparently not for pop3s (ssl, port 995) connections, where the default socket timeout still applies.
This applies to php 4.3.10, not tested on other versions.
imap_timeout
(PHP 4 >= 4.3.3, PHP 5)
imap_timeout — imap タイムアウトを設定あるいは取得する
パラメータ
-
timeout_type -
IMAP_OPENTIMEOUT、IMAP_READTIMEOUT、IMAP_WRITETIMEOUTあるいはIMAP_CLOSETIMEOUTのいずれか。 -
timeout -
タイムアウト秒数。
返り値
timeout が設定されている場合は、
この関数は成功した場合に TRUE、失敗した場合に FALSE を返します。
timeout が省略されていたり、-1
と評価される値が設定されている場合は、
現在のタイムアウト値 timeout_type
を整数で返します。
例
例1 imap_timeout() の例
<?php
echo "現在の読み込みタイムアウト秒数は " . imap_timeout(IMAP_READTIMEOUT) . " です\n";
?>
david dot morel at amakuru dot net ¶
7 years ago
bwgraham at vt dot edu ¶
9 years ago
We looked into the source to find out what this function actually does and how to use it. The function overrides the default_socket_timeout setting from your php.ini file
You can retrieve the current timeout length for each timeout type by calling the function as:
imap_timeout(timeout_type);
or
imap_timeout(timeout_type,-1);
You can set the timeout length for any of the timeout types by setting the timeout value to a number of seconds.
imap_timeout(timeout_type,<number of seconds>);
The timeout types are as follows:
1: Open
2: Read
3: Write
4: Close
It does not appear that the close type has been implemented.
