>  기사  >  백엔드 개발  >  PHP에서 URL을 요청하는 방법은 무엇입니까?

PHP에서 URL을 요청하는 방법은 무엇입니까?

零下一度
零下一度원래의
2017-07-16 16:39:373809검색

PHP에서 URL 주소를 여는 여러 가지 방법에 대한 요약입니다. 여기에 있는 기능은 주로 도둑 수집과 같은 기능에 사용됩니다.

1

<?php 
$url=&#39;www.baidu.com/&#39;; 
$html = file_get_contents($url); 
//print_r($http_response_header); 
ec($html); 
printhr(); 
printarr($http_response_header); 
 
printhr(); 
?>
샘플 코드 4: fsockopen 함수를 사용하여 URL을 열고 헤더 및 본문을 포함하여 get 메소드에서 전체 데이터를 가져옵니다.
<? 
$fp = fopen($url, &#39;r&#39;); 
 
printarr(stream_get_meta_data($fp)); 
printhr(); 
while(!feof($fp)) { 
 
$result .= fgets($fp, 1024); 
} 
echo "url body: $result"; 
 
printhr(); 
fclose($fp); 
?>

최근 개발 중에 문제가 발생했습니다. URL을 요청하고 관련 정보를 검색해 보세요. 이번 글에서는 fopen() 함수, file() 함수,

file_get_contents

() 함수를 사용하여 PHP에서 URL을 요청하는 방법 5가지를 소개합니다. 컬()을 사용하여 원격 URL 데이터를 요청하고 exec() 명령줄 명령을 실행하세요

이 글에서는 주로 PHP에서 URL을 요청하는 5가지 방법을 소개하고 참고 및 학습을 위해 공유하겠습니다. 자세한 소개를 보세요:

다섯 가지 방법:

처음 세 개는 PHP의 기본 파일 작업 기능입니다.

curl()은 PHP 확장 기능입니다. Linux에서는 Installation

1.fopen() 함수

<?php 
$data = array (&#39;foo&#39; => 
&#39;bar&#39;); 
$data = http_build_query($data); 
$opts = array ( 
&#39;http&#39; 
=> array ( 
&#39;method&#39; => &#39;POST&#39;, 
&#39;header&#39;=> "Content-type: 
application/x-www-form-urlencoded" . 
"Content-Length: " . strlen($data) . 
"", 
&#39;content&#39; => $data 
), 
); 
$context = 
stream_context_create($opts); 
$html = 
file_get_contents(&#39;localhost/e/admin/test.html&#39;, false, $context); 
 
echo $html; 
?>

2.file() 함수

<? 
function get_url 
($url,$cookie=false) { 
$url = parse_url($url); 
$query = 
$url[path]."?".$url[query]; 
ec("Query:".$query); 
$fp = fsockopen( 
$url[host], $url[port]?$url[port]:80 , $errno, $errstr, 30); 
if (!$fp) { 
 
return false; 
} else { 
$request = "GET $query HTTP/1.1"; 
 
$request .= "Host: $url[host]"; 
$request .= "Connection: Close"; 
 
if($cookie) $request.="Cookie: $cookie\n"; 
$request.=""; 
 
fwrite($fp,$request); 
while(!@feof($fp)) { 
$result .= @fgets($fp, 
1024); 
} 
fclose($fp); 
return $result; 
} 
} 
//获取url的html部分,去掉header 
function GetUrlHTML($url,$cookie=false) { 
 
$rowdata = get_url($url,$cookie); 
if($rowdata) 
{ 
$body= 
stristr($rowdata,""); 
$body=substr($body,4,strlen($body)); 
return $body; 
} 
return false; 
} 
?>
3.


$file = fopen("www.jb51.net", "r") or die("打开远程文件失败!");
while (!feof($file)) {
 $line = fgets($file, 1024);
 //使用正则匹配标题标记
 if (preg_match("/<title>(.*)<\/title>/i", $line, $out)) { 
 $title = $out[1]; //将标题标记中的标题字符取出
 break; //退出循环,结束远程文件读取
 }
}
fclose($file);

넷 , 컬()은 원격 URL 데이터를 요청합니다

$lines = file("www.jb51.net/article/48866.htm");
readfile(www.jb51.net/article/48866.htm);


5 exec()는 명령줄 명령을 실행합니다

$content = file_get_contents(www.jb51.net/article/48866.htm);

위 내용은 PHP에서 URL을 요청하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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