php 類比get_headers函數的程式碼範例

來源:互聯網
上載者:User

複製代碼 代碼如下:<?php

02 if(!function_exists('get_headers')){

03 function get_headers($url,$format=0){

04 $url=parse_url($url);

05 $end="\r\n\r\n";

06 $fp=fsockopen($url['host'],(empty($url['port'])?80:$url['port']),$errno,$errstr,30);

07 if($fp){

08 $out="GET / HTTP/1.1\r\n";

09 $out.="Host: ".$url['host']."\r\n";

10 $out.="Connection: Close\r\n\r\n";

11 $var='';

12 fwrite($fp,$out);

13 while(!feof($fp)){

14 $var.=fgets($fp,1280);

15 if(strpos($var,$end))

16 break;

17 }

18 fclose($fp);

19 $var=preg_replace("/\r\n\r\n.*\$/",'',$var);

20 $var=explode("\r\n",$var);

21 if($format){

22 foreach($var as $i){

23 if(preg_match('/^([a-zA-Z -]+): +(.*)$/',$i,$parts))

24 $v[$parts[1]]=$parts[2];

25 }

26 return $v;

27 }else{

28 return $var;

29 }

30 }

31 }

32 }

33 echo '<pre>';

34 print_r(get_headers('http://www.jb51.net'));

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.