程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP函數:判斷遠程文件是否存在實例代碼

PHP函數:判斷遠程文件是否存在實例代碼

編輯:關於PHP編程

本文介紹PHP函數 - 判斷遠程文件是否存在實例代碼

  1. <?php
  2. /*
  3.   函數:remote_file_exists
  4.   功能:判斷遠程文件是否存在
  5.   參數: $url_file - 遠程文件URL
  6.   返回:存在返回true,不存在或者其他原因返回false
  7. */
  8. function remote_file_exists($url_file){
  9.     //檢測輸入
  10.     $url_file = trim($url_file);
  11.     if (empty($url_file)) { return false; }
  12.     $url_arr = parse_url($url_file);
  13.     if (!is_array($url_arr) || empty($url_arr)){ return false; }
  14.     
  15.     //獲取請求數據
  16.     $host = $url_arr[host];
  17.     $path = $url_arr[path] ."?". $url_arr[query];
  18.     $port = isset($url_arr[port]) ? $url_arr[port] : "80";
  19.     
  20.     //連接服務器
  21.     $fp = fsockopen($host, $port, $err_no, $err_str, 30);
  22.     if (!$fp){ return false; }
  23.     
  24.     //構造請求協議
  25.     $request_str = "GET ".$path." HTTP/1.1 ";
  26.     $request_str .= "Host: ".$host." ";
  27.     $request_str .= "Connection: Close ";
  28.     
  29.     //發送請求
  30.     fwrite($fp, $request_str);
  31.     $first_header = fgets($fp, 1024);
  32.     fclose($fp);
  33.     
  34.     //判斷文件是否存在
  35.     if (trim($first_header) == ""){ return false; }
  36.     if (!preg_match("/200/", $first_header)){
  37.         return false;
  38.     }
  39.     return true;
  40. }
  41. //測試代碼
  42. $str_url = http://www.ite5e.com/newsinfo.php?nid=1493;
  43. $exits = remote_file_exists($str_url);
  44. echo $exists ? "Exists" : "Not exists";
  45. ?>

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved