【发布时间】:2018-02-15 15:47:27
【问题描述】:
我正在使用socket_recvfrom() 函数从设备获取数据
socket_recvfrom($this->socket, $this->received_data, 1024, 0, $this->ip, $this->port);
这对于有效的 IP 和端口非常有效,如果我更改为错误的 IP,它会卡住并且进程不会结束。如果它是无效 IP,我如何跳过这行代码?请帮忙。
提前致谢。
【问题讨论】:
我正在使用socket_recvfrom() 函数从设备获取数据
socket_recvfrom($this->socket, $this->received_data, 1024, 0, $this->ip, $this->port);
这对于有效的 IP 和端口非常有效,如果我更改为错误的 IP,它会卡住并且进程不会结束。如果它是无效 IP,我如何跳过这行代码?请帮忙。
提前致谢。
【问题讨论】:
试试这个
if (filter_var($this->ip, FILTER_VALIDATE_IP)) {
socket_recvfrom($this->socket, $this->received_data, 1024, 0, $this->ip, $this->port);
}
有关更多详细信息,请查看这些链接 PHP FILTER_VALIDATE_IP Filter & Filter flags
【讨论】: