PHP 7.3.25 Released!

Предопределенные константы

Перечисленные ниже константы определены данным расширением и могут быть доступны только в том случае, если PHP был собран с поддержкой этого расширения или же в том случае, если данное расширение было подгружено во время выполнения.

AF_UNIX (int)
AF_INET (int)
AF_INET6 (int)
Константа доступна, только если PHP скомпилирован с поддержкой IPv6.
SOCK_STREAM (int)
SOCK_DGRAM (int)
SOCK_RAW (int)
SOCK_SEQPACKET (int)
SOCK_RDM (int)
MSG_OOB (int)
MSG_WAITALL (int)
MSG_PEEK (int)
MSG_DONTROUTE (int)
MSG_EOR (int)
Константа недоступна на Windows-платформах.
MSG_EOF (int)
Константа недоступна на Windows-платформах.
SO_DEBUG (int)
SO_REUSEADDR (int)
SO_REUSEPORT (int)
Эта константа доступна только в PHP 5.4.10 и новее на платформах, которые поддерживают опцию SO_REUSEPORT сокета: сюда входят macOS и FreeBSD, но не входят Linux или Windows.
SO_KEEPALIVE (int)
SO_DONTROUTE (int)
SO_LINGER (int)
SO_BROADCAST (int)
SO_OOBINLINE (int)
SO_SNDBUF (int)
SO_RCVBUF (int)
SO_SNDLOWAT (int)
SO_RCVLOWAT (int)
SO_SNDTIMEO (int)
SO_RCVTIMEO (int)
SO_TYPE (int)
SO_ERROR (int)
TCP_NODELAY (int)
Константа используется для отключения TCP-алгоритма Нагла. Добавлена в PHP 5.2.7.
SOL_SOCKET (int)
PHP_NORMAL_READ (int)
PHP_BINARY_READ (int)
SOL_TCP (int)
SOL_UDP (int)

Следующие константы определены только в Windows и Unix-подобных системах. Каждая константа определена только, если ее эквивалент доступен в системе.

SOCKET_EINTR (int)
Прерванный системный вызов.
SOCKET_EBADF (int)
Неверный номер файла.
SOCKET_EACCES (int)
Доступ запрещён.
SOCKET_EFAULT (int)
Неверный адрес.
SOCKET_EINVAL (int)
Неверный аргумент.
SOCKET_EMFILE (int)
Слишком много открытых файлов.
SOCKET_ENAMETOOLONG (int)
Слишком длинное имя файла.
SOCKET_ENOTEMPTY (int)
Каталог не пуст.
SOCKET_ELOOP (int)
Обнаружено слишком много символических ссылок.
SOCKET_EWOULDBLOCK (int)
Операция будет блокирована.
SOCKET_EREMOTE (int)
Объект является удалённым.
SOCKET_EUSERS (int)
Слишком много пользователей.
SOCKET_ENOTSOCK (int)
Socket operation on non-socket.
SOCKET_EDESTADDRREQ (int)
Destination address required.
SOCKET_EMSGSIZE (int)
Сообщение слишком длинное.
SOCKET_EPROTOTYPE (int)
Protocol wrong type for socket.
SOCKET_EPROTONOSUPPORT (int)
Протокол не поддерживается.
SOCKET_ESOCKTNOSUPPORT (int)
Тип сокета не поддерживается.
SOCKET_EOPNOTSUPP (int)
Операция не поддерживается на конечной точке транспорта.
SOCKET_EPFNOSUPPORT (int)
Семейство протоколов не поддерживается.
SOCKET_EAFNOSUPPORT (int)
Семейство адресов не поддерживается протоколом.
SOCKET_EADDRNOTAVAIL (int)
Не удается назначить требуемый адрес.
SOCKET_ENETDOWN (int)
Сеть не работает.
SOCKET_ENETUNREACH (int)
Сеть недоступна.
SOCKET_ENETRESET (int)
Сеть сбросила соединение из-за переустановки соединения.
SOCKET_ECONNABORTED (int)
Приложение вызвало разрыв соединения.
SOCKET_ECONNRESET (int)
Соединение сброшено узлом.
SOCKET_ENOBUFS (int)
Нет доступного буферного пространства.
SOCKET_EISCONN (int)
Конечная точка транспорта уже подсоединена.
SOCKET_ENOTCONN (int)
Конечная точка транспорта не подсоединена.
SOCKET_ESHUTDOWN (int)
Не удается отправить данные из-за отключения конечной точки транспорта.
SOCKET_ETIMEDOUT (int)
Истекло время соединения.
SOCKET_ECONNREFUSED (int)
Отказ в соединении.
SOCKET_EHOSTDOWN (int)
Хост выключен.
SOCKET_EHOSTUNREACH (int)
Нет маршрута до хоста.
SOCKET_EALREADY (int)
Операция уже в прогрессе.
SOCKET_EINPROGRESS (int)
Операция сейчас в прогрессе.

Следующие константы определены только в Windows.

SOCKET_ENOPROTOOPT (int)
SOCKET_EADDRINUSE (int)
SOCKET_ETOOMYREFS (int)
SOCKET_EPROCLIM (int)
SOCKET_EDUOT (int)
SOCKET_ESTALE (int)
SOCKET_EDISCON (int)
SOCKET_SYSNOTREADY (int)
SOCKET_VERNOTSUPPORTED (int)
SOCKET_NOTINITIALISED (int)
SOCKET_HOST_NOT_FOUND (int)
SOCKET_TRY_AGAIN (int)
SOCKET_NO_RECOVERY (int)
SOCKET_NO_DATA (int)
SOCKET_NO_ADDRESS (int)

Следующие константы доступны только на UNIX-платформах. Каждая константа определена, только если её эквивалент доступен на платформе.

SOCKET_EPERM (int)
Операция не допускается.
SOCKET_ENOENT (int)
Нет такого файла или каталога.
SOCKET_EIO (int)
Ошибка ввода-вывода.
SOCKET_ENXIO (int)
Нет такого устройства или адреса.
SOCKET_E2BIG (int)
Список аргументов слишком длинный.
SOCKET_EAGAIN (int)
Попытайтесь ещё раз.
SOCKET_ENOMEM (int)
Переполнение доступной памяти.
SOCKET_ENOTBLK (int)
Требуется блочное устройство.
SOCKET_EBUSY (int)
Устройство или ресурс занято.
SOCKET_EEXIST (int)
Файл существует.
SOCKET_EXDEV (int)
Ссылка на кросс-устройство.
SOCKET_ENODEV (int)
Нет такого устройства.
SOCKET_ENOTDIR (int)
Это не каталог.
SOCKET_EISDIR (int)
Это каталог.
SOCKET_ENFILE (int)
Переполнение файловой таблицы.
SOCKET_ENOTTY (int)
Не печатающее устройство.
SOCKET_ENOSPC (int)
Не осталось места на устройстве.
SOCKET_ESPIPE (int)
Недопустимый запрос.
SOCKET_EROFS (int)
Файловая система доступна только для чтения.
Слишком много ссылок.
SOCKET_EPIPE (int)
Оборванный канал.
SOCKET_ENOLCK (int)
Не доступна блокировка записи.
SOCKET_ENOSYS (int)
Функция не реализована.
SOCKET_ENOMSG (int)
Нет сообщения желаемого типа.
SOCKET_EIDRM (int)
Идентификатор удалён.
SOCKET_ECHRNG (int)
Тип канала выходит за пределы диапазона.
SOCKET_EL2NSYNC (int)
Уровень 2 не синхронизирован.
SOCKET_EL3HLT (int)
Уровень 3 остановлен.
SOCKET_EL3RST (int)
Уровень 3 сброшен.
SOCKET_ELNRNG (int)
Номер ссылки выходит за пределы диапазона.
SOCKET_EUNATCH (int)
Драйвер протокола не подключён.
SOCKET_ENOCSI (int)
CSI-структура недоступна.
SOCKET_EL2HLT (int)
Уровень 2 остановлен.
SOCKET_EBADE (int)
Недопустимый коммутатор.
SOCKET_EBADR (int)
Недопустимый дескриптор запроса.
SOCKET_EXFULL (int)
Коммутатор заполнен.
SOCKET_ENOANO (int)
Не anode.
SOCKET_EBADRQC (int)
Недопустимый код запроса.
SOCKET_EBADSLT (int)
Недопустимый слот.
SOCKET_ENOSTR (int)
Устройство не является потоковым.
SOCKET_ENODATA (int)
Нет доступных данных.
SOCKET_ETIME (int)
Таймер истёк.
SOCKET_ENOSR (int)
Кончились потоковые ресурсы.
SOCKET_ENONET (int)
Машина не подключена к сети.
Ссылка была разорвана.
SOCKET_EADV (int)
Ошибка объявления (advertise).
SOCKET_ESRMNT (int)
Ошибка Srmount.
SOCKET_ECOMM (int)
Ошибка связи при отправке.
SOCKET_EPROTO (int)
Ошибка протокола.
SOCKET_EMULTIHOP (int)
Попытка перескочить на недоступный ресурс (multihop).
SOCKET_EBADMSG (int)
Не является сообщением с данными.
SOCKET_ENOTUNIQ (int)
Имя не уникальное в сети.
SOCKET_EBADFD (int)
Файловый указатель в неверном состоянии.
SOCKET_EREMCHG (int)
Удаленный адрес изменился.
SOCKET_ERESTART (int)
Прерванный системный вызов должен быть перезапущен.
SOCKET_ESTRPIPE (int)
Ошибка канала потока.
SOCKET_EPROTOOPT (int)
Протокол недоступен.
SOCKET_ADDRINUSE (int)
Адрес уже в использовании.
SOCKET_ETOOMANYREFS (int)
Слишком много ссылок: не могу соединить.
SOCKET_EISNAM (int)
Именованный тип файла.
SOCKET_EREMOTEIO (int)
Ошибка удалённого ввода-вывода.
SOCKET_EDQUOT (int)
Квота превышена.
SOCKET_ENOMEDIUM (int)
Носитель не найден.
SOCKET_EMEDIUMTYPE (int)
Неверный тип носителя.
add a note add a note

User Contributed Notes 4 notes

up
15
Anonymous
8 years ago
We can know sockets constants values with :

<?php
$a
= get_defined_constants(TRUE) ;
foreach (
$a['sockets'] as $constant => $value ) {
   
printf("%-25s %d\r\n", $constant, $value) ;
}
?>

AF_UNIX                   1
AF_INET                   2
AF_INET6                  23
SOCK_STREAM               1
SOCK_DGRAM                2
SOCK_RAW                  3
SOCK_SEQPACKET            5
SOCK_RDM                  4
MSG_OOB                   1
MSG_WAITALL               0
MSG_PEEK                  2
MSG_DONTROUTE             4
SO_DEBUG                  1
SO_REUSEADDR              4
SO_KEEPALIVE              8
SO_DONTROUTE              16
SO_LINGER                 128
SO_BROADCAST              32
SO_OOBINLINE              256
SO_SNDBUF                 4097
SO_RCVBUF                 4098
SO_SNDLOWAT               4099
SO_RCVLOWAT               4100
SO_SNDTIMEO               4101
SO_RCVTIMEO               4102
SO_TYPE                   4104
SO_ERROR                  4103
SOL_SOCKET                65535
SOMAXCONN                 2147483647
TCP_NODELAY               1
PHP_NORMAL_READ           1
PHP_BINARY_READ           2
SOCKET_EINTR              10004
SOCKET_EBADF              10009
SOCKET_EACCES             10013
SOCKET_EFAULT             10014
SOCKET_EINVAL             10022
SOCKET_EMFILE             10024
SOCKET_EWOULDBLOCK        10035
SOCKET_EINPROGRESS        10036
SOCKET_EALREADY           10037
SOCKET_ENOTSOCK           10038
SOCKET_EDESTADDRREQ       10039
SOCKET_EMSGSIZE           10040
SOCKET_EPROTOTYPE         10041
SOCKET_ENOPROTOOPT        10042
SOCKET_EPROTONOSUPPORT    10043
SOCKET_ESOCKTNOSUPPORT    10044
SOCKET_EOPNOTSUPP         10045
SOCKET_EPFNOSUPPORT       10046
SOCKET_EAFNOSUPPORT       10047
SOCKET_EADDRINUSE         10048
SOCKET_EADDRNOTAVAIL      10049
SOCKET_ENETDOWN           10050
SOCKET_ENETUNREACH        10051
SOCKET_ENETRESET          10052
SOCKET_ECONNABORTED       10053
SOCKET_ECONNRESET         10054
SOCKET_ENOBUFS            10055
SOCKET_EISCONN            10056
SOCKET_ENOTCONN           10057
SOCKET_ESHUTDOWN          10058
SOCKET_ETOOMANYREFS       10059
SOCKET_ETIMEDOUT          10060
SOCKET_ECONNREFUSED       10061
SOCKET_ELOOP              10062
SOCKET_ENAMETOOLONG       10063
SOCKET_EHOSTDOWN          10064
SOCKET_EHOSTUNREACH       10065
SOCKET_ENOTEMPTY          10066
SOCKET_EPROCLIM           10067
SOCKET_EUSERS             10068
SOCKET_EDQUOT             10069
SOCKET_ESTALE             10070
SOCKET_EREMOTE            10071
SOCKET_EDISCON            10101
SOCKET_SYSNOTREADY        10091
SOCKET_VERNOTSUPPORTED    10092
SOCKET_NOTINITIALISED     10093
SOCKET_HOST_NOT_FOUND     11001
SOCKET_TRY_AGAIN          11002
SOCKET_NO_RECOVERY        11003
SOCKET_NO_DATA            11004
SOCKET_NO_ADDRESS         11004
SOL_TCP                   6
SOL_UDP                   17
up
4
gvgvgvijayan at gmail dot com
7 years ago
$a = get_defined_constants(TRUE);
foreach ($a as $k => $v) {
    printf('%-25s <br/>', $k);
    foreach ($v as $k => $v) {
        printf('&nbsp;&nbsp;&nbsp;&nbsp--->%-25s %d<br/>', $k, $v);
    }
}

this may look duplicate for previous anonymous post but that code snippet only return 1 for constants value
1-->first called the get_defined_constants by passing argument true to categorize the data
2-->then using foreach iterate over index of the array
3-->here printf is used to print title of the category
4-->then it move on to interrior array and display the list of contants available in each category along with its value
up
0
kenverhaegen at gmail dot com
7 months ago
Seems like SOCKET_EAGAIN is an alias of SOCKET_EWOULDBLOCK (int 11)
up
0
yyb8 at vip dot qq dot com
3 years ago
note:Linux kernel 3.9  now support SO_REUSEPORT option
To Top