누군가가 PHP 함수 fsockopen을 도와 줄 수 있습니까? 나는이 같은 함수를 호출하는 경우PHP 함수 fsockopen false를 반환하지 않음
:
$fp = fsockopen('xywqnda.com', 80, $errno, $errstr, 10);
사용할 수없는 호스트 도메인을, false를 반환하지 않습니다 난 왜 이해가 안 돼요!
누군가가 PHP 함수 fsockopen을 도와 줄 수 있습니까? 나는이 같은 함수를 호출하는 경우PHP 함수 fsockopen false를 반환하지 않음
:
$fp = fsockopen('xywqnda.com', 80, $errno, $errstr, 10);
사용할 수없는 호스트 도메인을, false를 반환하지 않습니다 난 왜 이해가 안 돼요!
노력이
ini_set("display_errors","on")
도메인이 파일 포인터가 반환되기 때문에 함수가 성공하여 만든 파일을 의미 TRUE를 반환합니다보다 다른, 무효 인 경우 경고가 표시됩니다 될 것 FALSE 파일을 만들 수없는 경우에만 반환됩니다.
나는 이미 이와 같은 것을 시도했다. 그것은 error_reporting (E_ERROR)이었고, 둘 다 작동하지 않는다 ... 어쨌든 당신의 대답에 대해 감사한다. –
// displays all warnings, notices and errors
ini_set('display_errors', 1);
error_reporting(E_ALL);
$fp = fsockopen('xywqnda.com', 80, $errno, $errstr, 10);
연결 시도가 10 초 후에 시간 초과됩니다.
도메인을 사용할 수 없기 때문에 경고 메시지가 표시됩니다.
$ errno 및 $ errstr에 시스템 오류 번호 및 오류 메시지가 포함됩니다.
이 함수는 false를 반환하므로 $ fp는 false와 같습니다.
문서 : fsockopen
여기 내 코드는 \t error_reporting (E_ALL); \t ini_set ("display_errors", "on"); \t $ fp = fsockopen ("udp : //2.2.2.2", 13, $ errno, $ errstr); \t if (!$ FP가) \t \t는 "오프라인 \ 없음을"에코; \t 존재 \t \t 에코 "온라인 \ 없음"; ?> –
아, 당신은 UDP를 사용하고 있습니다. 귀하의 원래 예제는 이것을 보여주지 못했습니다. 이것은 사물을 변화시킵니다. PHP 매뉴얼에서 :
UDP 소켓을 경고 때로는 원격 호스트가 도달 할 수없는 경우에도 오류없이 열었습니다 나타납니다. 소켓에서 /에서 데이터를 읽거나 쓸 때 오류는 에만 나타납니다. 이유는 UDP가 "연결없는"프로토콜이기 때문입니다. 은 실제로 데이터를 보내거나받을 때까지 운영 체제가 소켓 에 대한 링크를 설정하려고 시도하지 않음을 의미합니다.
이상하게도 코드를 실행하면'$ fp'가'bool (false)'와 같아집니다. – Sarke
여기 내 코드 : \t error_reporting (E_ALL); \t ini_set ("display_errors", "on"); \t $ fp = fsockopen ("udp : //2.2.2.2", 13, $ errno, $ errstr); \t if (! $ fp) \t \t 에코 "오프라인 \ n"; \t else \t \t "온라인 \ n"; ?> –
원래 질문을 업데이트하십시오. 더 읽기 쉽습니다. – Jocelyn