预定义常量
下列常量由此扩展定义,且仅在此扩展编译入 PHP 或在运行时动态载入时可用。
-
AF_UNIX
(int) - Unix 域文件系统路径名的套接字地址族。
-
AF_INET
(int) - Internet 域的 IPv4 套接字地址族。
-
AF_INET6
(int) - Internet 域的 IPv6 套接字地址族。仅在编译时启用 IPv6 支持时可用。
-
AF_DIVERT
(int) - 自 PHP 8.3.0 起可用(仅 FreeBSD)
-
SOCK_STREAM
(int) -
SOCK_DGRAM
(int) -
SOCK_RAW
(int) -
SOCK_SEQPACKET
(int) -
SOCK_RDM
(int) -
SOCK_CONN_DGRAM
(int) - 设置套接字为面向连接的数据报。自 PHP 8.4.0 起可用。(仅 NetBSD)
-
SOCK_DCCP
(int) - 设置套接字为数据报拥塞控制协议。自 PHP 8.4.0 起可用。(仅 NetBSD)
-
SOCK_NONBLOCK
(int) - 设置套接字的非阻塞状态 flag。自 PHP 8.4.0 起可用。
-
SOCK_CLOEXEC
(int) - 设置套接字的执行时关闭(close-on-exec)状态 flag。自 PHP 8.4.0 起可用。
-
MSG_OOB
(int) -
MSG_WAITALL
(int) -
MSG_PEEK
(int) -
MSG_DONTROUTE
(int) -
MSG_EOR
(int) - 在 Windows 平台上无效
-
MSG_EOF
(int) - 在 Windows 平台上无效
-
MSG_ZEROCOPY
(int) - 自 PHP 8.2.0 起可用
-
SO_DEBUG
(int) -
SO_REUSEADDR
(int) -
SO_REUSEPORT
(int) -
该常量只在支持
SO_REUSEPORT
socket 选项的平台上可用:这包括 Linux、macOS 和 *BSD,但不包括 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) -
SO_ZEROCOPY
(int) - 自 PHP 8.2.0 起可用
-
TCP_NODELAY
(int) - 用于禁用 Nagle TCP 算法。
-
TCP_KEEPCNT
(int) - 自 PHP 8.2.0 起可用
-
TCP_KEEPIDLE
(int) - 自 PHP 8.2.0 起可用
-
TCP_KEEPINTVL
(int) - 自 PHP 8.2.0 起可用
-
TCP_KEEPALIVE
(int) - 自 PHP 8.2.0 起可用
-
TCP_NOTSENT_LOWAT
(int) - 自 PHP 8.2.0 起可用
-
SO_MARK
(int) - 自 PHP 8.1.0 起可用
- 自 PHP 8.1.0 起可用
-
SO_RTABLE
(int) - 从 PHP 8.2.0 起可用
-
SO_ACCEPTFILTER
(int) - 自 PHP 8.1.0 起可用
-
SO_DONTTRUNC
(int) - 自 PHP 8.1.0 起可用
-
SO_WANTMORE
(int) - 自 PHP 8.1.0 起可用
-
SO_INCOMING_CPU
(int) - 自 PHP 8.2.0 起可用
-
SO_MEMINFO
(int) - 自 PHP 8.2.0 起可用
-
SO_BPF_EXTENSIONS
(int) - 自 PHP 8.2.0 起可用
-
SO_SETFIB
(int) - 自 PHP 8.2.0 起可用
-
SO_ATTACH_REUSEPORT_CBPF
(int) - 自 PHP 8.3.0 起可用(仅 Linux)
-
SO_DETACH_BPF
(int) - 自 PHP 8.3.0 起可用(仅 Linux)
-
SO_DETACH_FILTER
(int) - 自 PHP 8.3.0 起可用(仅 Linux)
-
SO_RERROR
(int) - 自 PHP 8.3.0 起可用(仅 NetBSD)
-
SO_ZEROIZE
(int) - 自 PHP 8.3.0 起可用(仅 OpenBSD)
-
SO_SPLICE
(int) - 自 PHP 8.3.0 起可用(仅 OpenBSD)
-
SO_REUSEPORT_LB
(int) - 自 PHP 8.3.0 起可用(仅 FreeBSD)
-
SOL_FILTER
(int) - 自 PHP 8.2.0 起可用
-
SOL_UDPLITE
(int) - 自 PHP 8.3.0 起可用
-
UDPLITE_RECV_CSCOV
(int) - 自 PHP 8.3.0 起可用
-
UDPLITE_SEND_CSCOV
(int) - 自 PHP 8.3.0 起可用
-
TCP_DEFER_ACCEPT
(int) - 自 PHP 8.1.0 起可用
-
TCP_CONGESTION
(int) - 自 PHP 8.2.0 起可用
-
TCP_QUICKACK
(int) - 自 PHP 8.3.0 起可用(仅 Linux)
-
TCP_REPAIR
(int) - 自 PHP 8.3.0 起可用(仅 Linux)
-
TCP_SYNCNT
(int) - 设置 TCP 在中止连接尝试之前应发送的 SYN 重新传输次数。自 PHP 8.4.0 起可用(仅 Linux)
-
IP_DONTFRAG
(int) - 自 PHP 8.3.0 起可用(仅 FreeBSD)
-
IP_MTU_DISCOVER
(int) - 自 PHP 8.3.0 起可用(仅 Linux)
-
IP_PMTUDISC_DO
(int) - 自 PHP 8.3.0 起可用(仅 Linux)
-
IP_PMTUDISC_DONT
(int) - 自 PHP 8.3.0 起可用(仅 Linux)
-
IP_PMTUDISC_WANT
(int) - 自 PHP 8.3.0 起可用(仅 Linux)
-
IP_PMTUDISC_PROBE
(int) - 自 PHP 8.3.0 起可用(仅 Linux)
-
IP_PMTUDISC_INTERFACE
(int) - 自 PHP 8.3.0 起可用(仅 Linux)
-
IP_PMTUDISC_OMIT
(int) - 自 PHP 8.3.0 起可用(仅 Linux)
-
IP_BIND_ADDRESS_NO_PORT
(int) - 自 PHP 8.3.0 起可用(仅 Linux)
-
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_EDESTADDRREQ
(int) - 需要目标地址。
-
SOCKET_EMSGSIZE
(int) - 消息太长。
-
SOCKET_EPROTOTYPE
(int) - socket 协议类型错误。
-
SOCKET_EPROTONOSUPPORT
(int) - 不支持的协议。
-
SOCKET_ESOCKTNOSUPPORT
(int) - 不支持的 socket 类型。
-
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) - I/O 错误。
-
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) - 在 ioctl 系统调用中指定了无效的 ioctl (I/O 控制)编号。
-
SOCKET_ENOSPC
(int) - 设备上没有剩余空间。
-
SOCKET_ESPIPE
(int) - 非法查找。
-
SOCKET_EROFS
(int) - 文件系统只读。
-
SOCKET_EMLINK
(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) - 协议驱动没有安装(attached)。
-
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_ENOLINK
(int) - 链接已被切断。
-
SOCKET_EADV
(int) - 通知错误。
-
SOCKET_ESRMNT
(int) - Srmount 错误。
-
SOCKET_ECOMM
(int) - 发送时通信错误。
-
SOCKET_EPROTO
(int) - 协议错误。
-
SOCKET_EMULTIHOP
(int) - 多跳尝试。
-
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) - 远程 I/O 错误。
-
SOCKET_EDQUOT
(int) - 超过配额。
-
SOCKET_ENOMEDIUM
(int) - 未找到媒介。
-
SOCKET_EMEDIUMTYPE
(int) - 错误的媒介类型。
-
SCM_RIGHTS
(int) - 发送或接收一组来自另一个进程打开的文件描述符。
-
SCM_CREDENTIALS
(int) -
SCM_CREDS
(int) - 自 PHP 8.2.0 起可用
-
SCM_CREDS2
(int) - 自 PHP 8.2.0 起可用
-
LOCAL_CREDS
(int) - 自 PHP 8.2.0 起可用
-
LOCAL_CREDS_PERSISTENT
(int) - 自 PHP 8.2.0 起可用
-
SKF_AD_OFF
(int) - 自 PHP 8.2.0 起可用
-
SKF_AD_PROTOCOL
(int) - 自 PHP 8.2.0 起可用
-
SKF_AD_PKTTYPE
(int) - 自 PHP 8.2.0 起可用
-
SKF_AD_IFINDEX
(int) - 自 PHP 8.2.0 起可用
-
SKF_AD_NLATTR
(int) - 自 PHP 8.2.0 起可用
-
SKF_AD_NLATTR_NEST
(int) - 自 PHP 8.2.0 起可用
-
SKF_AD_MARK
(int) - 自 PHP 8.2.0 起可用
-
SKF_AD_QUEUE
(int) - 自 PHP 8.2.0 起可用
-
SKF_AD_HATYPE
(int) - 自 PHP 8.2.0 起可用
-
SKF_AD_RXHASH
(int) - 自 PHP 8.2.0 起可用
-
SKF_AD_CPU
(int) - 自 PHP 8.2.0 起可用
-
SKF_AD_ALU_XOR_X
(int) - 自 PHP 8.2.0 起可用
-
SKF_AD_VLAN_TAG
(int) - 自 PHP 8.2.0 起可用
-
SKF_AD_VLAN_TAG_PRESENT
(int) - 自 PHP 8.2.0 起可用
-
SKF_AD_PAY_OFFSET
(int) - 自 PHP 8.2.0 起可用
-
SKF_AD_RANDOM
(int) - 自 PHP 8.2.0 起可用
-
SKF_AD_VLAN_TPID
(int) - 自 PHP 8.2.0 起可用
-
SKF_AD_MAX
(int) - 自 PHP 8.2.0 起可用
-
AI_ADDRCONFIG
(int) -
AI_ALL
(int) -
AI_CANONIDN
(int) -
AI_CANONNAME
(int) -
AI_IDN
(int) -
AI_NUMERICHOST
(int) -
AI_NUMERICSERV
(int) -
AI_PASSIVE
(int) -
AI_V4MAPPED
(int) -
FIL_ATTACH
(int) -
FIL_DETACH
(int) -
IPPROTO_IP
(int) -
IPPROTO_IPV6
(int) -
IPV6_HOPLIMIT
(int) -
IPV6_MULTICAST_HOPS
(int) -
IPV6_MULTICAST_IF
(int) -
IPV6_MULTICAST_LOOP
(int) -
IPV6_PKTINFO
(int) -
IPV6_RECVHOPLIMIT
(int) -
IPV6_RECVPKTINFO
(int) -
IPV6_RECVTCLASS
(int) -
IPV6_TCLASS
(int) -
IPV6_UNICAST_HOPS
(int) -
IPV6_V6ONLY
(int) -
IP_MULTICAST_IF
(int) -
IP_MULTICAST_LOOP
(int) -
IP_MULTICAST_TTL
(int) -
IP_PORTRANGE
(int) - 设置用于选择本地端口号的端口范围。自 PHP 8.4.0 起可用。(仅 FreeBSD/NetBSD/OpenBSD)
-
IP_PORTRANGE_DEFAULT
(int) - 使用默认端口值范围。自 PHP 8.4.0 起可用。(仅 FreeBSD/NetBSD/OpenBSD)
-
IP_PORTRANGE_HIGH
(int) - 使用高范围的端口值。自 PHP 8.4.0 起可用。(仅 FreeBSD/NetBSD/OpenBSD)
-
IP_PORTRANGE_LOW
(int) - 使用低范围的端口值。自 PHP 8.4.0 起可用。(仅 FreeBSD/NetBSD/OpenBSD)
-
MCAST_BLOCK_SOURCE
(int) -
MCAST_JOIN_GROUP
(int) -
MCAST_JOIN_SOURCE_GROUP
(int) -
MCAST_LEAVE_GROUP
(int) -
MCAST_LEAVE_SOURCE_GROUP
(int) -
MCAST_UNBLOCK_SOURCE
(int) -
MSG_CMSG_CLOEXEC
(int) -
MSG_CONFIRM
(int) -
MSG_CTRUNC
(int) -
MSG_DONTWAIT
(int) -
MSG_ERRQUEUE
(int) -
MSG_MORE
(int) -
MSG_NOSIGNAL
(int) -
MSG_TRUNC
(int) -
MSG_WAITFORONE
(int) -
SOL_LOCAL
(int) -
SOMAXCONN
(int) -
SO_BINDTODEVICE
(int) -
SO_FAMILY
(int) -
SO_LABEL
(int) -
SO_LISTENQLEN
(int) -
SO_LISTENQLIMIT
(int) -
SO_PASSCRED
(int) -
SO_PEERLABEL
(int) -
SO_EXCLUSIVEADDRUSE
(int) - 防止其他套接字强制绑定到相同的地址和端口。自 PHP 8.4.0 起可用。(仅 Windows)
-
SO_EXCLBIND
(int) - 启用/禁用套接字的独占绑定。自 PHP 8.4.0 起可用。(仅 Solaris)
-
SO_NOSIGPIPE
(int) - 控制套接字的 SIGPIPE 信号生成。自 PHP 8.4.0 起可用。(仅 MacOs 和 FreeBSD)
-
SO_LINGER_SEC
(int) -
与
SO_LINGER
类似,但停留时间以秒为单位,而不是 MacOs 上的点击时间(time clicks)。自 PHP 8.4.0 起可用。(仅 MacOs) -
SO_BINDTOIFINDEX
(int) - 通过索引将套接字绑定到特定网络接口。自 PHP 8.4.0 起可用。
+添加备注
用户贡献的备注 2 notes
gvgvgvijayan at gmail dot com ¶
11 years ago
$a = get_defined_constants(TRUE);
foreach ($a as $k => $v) {
printf('%-25s <br/>', $k);
foreach ($v as $k => $v) {
printf('  --->%-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
kenverhaegen at gmail dot com ¶
4 years ago
Seems like SOCKET_EAGAIN is an alias of SOCKET_EWOULDBLOCK (int 11)