> 백엔드 개발 > PHP 튜토리얼 > PHP는 소켓을 통해 웹 서버의 응답 내용을 얻습니다.

PHP는 소켓을 통해 웹 서버의 응답 내용을 얻습니다.

WBOY
풀어 주다: 2016-07-28 08:27:38
원래의
1063명이 탐색했습니다.

$url="www.baidu.com";  //이름
$path="/";  //로로
$type="GET"; //请求방법
error_reporting(E_ALL);
echo "

TCP/IP 연결

n";
/* 获取端口号 */
$service_port = getservbyname( 'www', 'tcp');
/* 获取ip地址. */
$address = gethostbyname($url);
/* 创建 TCP/IP 소켓. */
$socket = 소켓_create(AF_INET, SOCK_STREAM, SOL_TCP);
if ($socket === false) {
    echo "socket_create() 실패: 이유: " . 소켓_strerror(socket_last_error()) . "n";
} else {
    echo "OK.n";
}
echo "'$service_port' 포트에서 '$address'에 연결을 시도하는 중...";
$result = 소켓_연결($socket, $address, $service_port);
if ($result === false) {
    echo "socket_connect() failed.nReason: ($result) " . 소켓_strerror(socket_last_error($socket)) . "n";
} else {
    echo "OK.n";
}
$in = $type." ".$path." HTTP/1.1rn";
$ in .= "호스트: ".$url."rn";
$in .= "연결: Closernrn";
$out = '';
echo "HTTP HEAD 요청을 보내는 중..." ;
socket_write($socket, $in, strlen($in));
echo "OK.n";
echo "읽기 응답:nn";
while($out = 소켓_read( $socket, 2048)) {
    echo $out;
}
echo "소켓을 닫는 중...";
socket_close($socket);
echo "OK.nn";
?>

php 통신 소켓을 사용하여 웹에서 사용할 수 있는 웹사이트, 包括了방면, 希望对PHP에는 유용한 모든 기능이 있습니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿