>백엔드 개발 >PHP 튜토리얼 >PHP에서 도메인 이름 IP 주소 코드 기능을 얻는 방법

PHP에서 도메인 이름 IP 주소 코드 기능을 얻는 방법

高洛峰
高洛峰원래의
2016-11-29 16:02:451467검색

먼저 다음 코드를 보면 두 출력 결과가 동일합니다.

$dm = 'www.phpfensi.com'

$ip = gethostbyname($dm);

echo gethostbyaddr($ip);

echo $ip;

gethostbyname 구문 정보:

string gethostbyname( string $hostname )

호스트 이름으로 지정된 인터넷 호스트의 ipv4 주소를 반환합니다.

다음은 해결하기 위해 제가 생각해낸 최선의 접근 방식인 예입니다. 호스트 이름을 IP 주소로 변환할 때 빠르고 안정적이며 시간 초과 지원, 유효하지 않은 주소(예: 유니코드 문자열)는 gethostbyname을 호출할 때 8초가 아닌 4초 후에 반환됩니다. 그러나 코드는 다음과 같습니다.

function getaddrbyhost($host, $ 시간 초과 = 3) {

$query = `nslookup -timeout=$timeout -retry=1 $host`

if (preg_match('/ 주소: (.*) /', $query, $matches))

return Trim($matches[1]);

return $host

}

gethostbyaddr은 특정 IP 주소에 해당하는 인터넷 호스트 이름은 다음과 같습니다.

string gethostbyaddr (string $ip_address)

$hostname = gethostbyaddr( $_server['remote_addr']);

echo $hostname

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.