이 기사의 예에서는 PHP가 fsockopen 함수를 사용하여 게시물을 보내고 웹 페이지 콘텐츠를 얻기 위한 요청을 받는 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요.
구체적인 구현 코드는 다음과 같습니다.
$post =1;
$url = 파싱_url($url)
$호스트 ='http://www.jb51.net'
$경로 ='/'
$query ='?action=phpfensi.com'
$포트 =80
if($post) {
$out = "$path http/1.0 게시
$out .= "수락: */* "
//$out .= "참조자: $boardurl ";
$out .= "수락 언어: zh-cn "
$out .= "콘텐츠 유형: 애플리케이션/x-www-form-urlencoded"
$out .= "사용자 에이전트: $_server[http_user_agent] "
$out .= "호스트: $host ";
$out .= '콘텐츠 길이: '.strlen($post)." "
$out .= "연결: 종료"
$out .= "캐시 제어: 캐시 없음"
$out .= "쿠키: $cookie "
$아웃 .= $포스트
} 다른 {
$out = "$path http/1.0 가져오기
$out .= "수락: */* "
//$out .= "참조자: $boardurl ";
$out .= "수락 언어: zh-cn "
$out .= "사용자 에이전트: $_server[http_user_agent] "
$out .= "호스트: $host ";
$out .= "연결: 종료"
$out .= "쿠키: $cookie "
}
$fp = @fsockopen(($ip ? $ip : $host), $port, $errno, $errstr, $timeout)
if(!$fp)
{
return '';//참고 $errstr : $errno
} 다른 {
'성공적인 액세스'를 반환합니다.
}
fsockopen 구문:
코드 복사
이 소켓은 차단 모드에서 기본적으로 활성화됩니다. stream_set_blocking()을 사용하여 비차단 모드로 전환할 수 있습니다. 위의 예를 이해하지 못하면 다음과 같은 코드를 살펴보겠습니다. 다음은:
코드 복사
$out = "/http/1.1 가져오기"
$out .= "호스트: www.jb51.net"
$out .= "연결: 종료"
fwrite($fp, $out)
while (!feof($fp)) {
echo fgets($fp, 128)
}
fclose($fp)
}
이 기사가 모든 사람의 PHP 프로그래밍 설계에 도움이 되기를 바랍니다.