php如何判断远程文件是否存在

<?php

/* 
  函数:remote_file_exists 
  功能:判断远程文件是否存在 
  参数: $url_file -远程文件URL 
  返回:存在返回true,不存在或者其他原因返回false 
*/ 
function remote_file_exists($url_file){ 
       //检测输入 
       $url_file = trim($url_file); 
       if (empty($url_file)) { return false; } 
       $url_arr = parse_url($url_file); 
       if (!is_array($url_arr) || empty($url_arr)){return false; }

//获取请求数据 
       $host = $url_arr[‘host‘]; 
       $path = $url_arr[‘path‘] ."?".$url_arr[‘query‘]; 
       $port = isset($url_arr[‘port‘]) ?$url_arr[‘port‘] : "80";

//连接服务器 
       $fp = fsockopen($host, $port, $err_no, $err_str,30); 
       if (!$fp){ return false; }

//构造请求协议 
       $request_str = "GET ".$path."HTTP/1.1\r\n"; 
    $request_str .= "Host:".$host."\r\n"; 
    $request_str .= "Connection:Close\r\n\r\n";

//发送请求 
    fwrite($fp,$request_str); 
       $first_header = fgets($fp, 1024); 
    fclose($fp);

//判断文件是否存在 
       if (trim($first_header) == ""){ return false;} 
       if (!preg_match("/2002881064151/", $first_header)){ 
              return false; 
       } 
       return true; 
}

?>

函数描述及例子

<? 
//测试代码 
$str_url = ‘http://www.phpx.com/viewarticle.php?id=119617‘; 
$exits = remote_file_exists($str_url); 
echo $exists ? "Exists" : "Not exists"; 
?>

时间: 2024-10-11 04:08:18

php如何判断远程文件是否存在的相关文章

判断远程文件是否存在

public bool UriExists(string url)        {             try             {                 new System.Net.WebClient().OpenRead(url);                return true;            }            catch (System.Net.WebException)            {                 return

C# 判断远程文件是否存在

#region 判断远程文件是否存在 /// <summary> /// 判断远程文件是否存在 /// </summary> /// <param name="fileUrl"></param> /// <returns></returns> public static bool RemoteFileExists(string fileUrl) { HttpWebRequest re = null; HttpWeb

PHP判断远程文件是否存在

<?php /* 函数:remote_file_exists 功能:判断远程文件是否存在 参数: $url_file -远程文件URL 返回:存在返回true,不存在或者其他原因返回false */ function remote_file_exists($url_file){ //检测输入 $url_file = trim($url_file); if (empty($url_file)) { return false; } $url_arr = parse_url($url_file); i

PHP判断远程图片或文件是否存在

PHP判断远程图片是否存在,此方法同样适用于判断远程文件是否存在,这是一种既然有效率且又准确的方法,建议采用此方法,以往使用get_headers()方法判断都是有问题的: function check_remote_file_exists($url) { $curl = curl_init($url); //不取回数据 curl_setopt($curl, CURLOPT_NOBODY, true); //发送请求 $result = curl_exec($curl); $found = fa

C#实现判断一远程文件(图片等)是否存在

主要功能实现判断远程文件(图片等)是否存在.而这函数呢,使用一字符串URL作为它的参数(一远程图片网址),通过WebRequest及WebResponse对象来实现这一功能,具体代码如下: 1 private bool GetServerFileExists(string URL) 2 { 3 try 4 { 5 //用于把一请求的响应将会被放到一个WebRequest对象里 6 System.Net.WebRequest s = System.Net.WebRequest.Create(URL

PHP判断远程图片或文件或url是否存在-180

我通常使用curl判断判断远程图片或文件是否存在: /**     * @link http://www.phpddt.com     */    function url_exists($url) {        $ch = curl_init();         curl_setopt ($ch, CURLOPT_URL, $url);         //不下载        curl_setopt($ch, CURLOPT_NOBODY, 1);        //设置超时     

下载远程(第三方服务器)文件、图片,保存到本地(服务器)的方法、保存抓取远程文件、图片

将一台服务器的文件.图片,保存(下载)到另外一台服务器进行保存的方法: 1 #region 图片下载 2 3 #region 图片下载[使用流.WebRequest进行保存] 4 /// <summary> 5 /// 图片下载[使用流.WebRequest进行保存] 6 /// </summary> 7 /// <param name="fileUrl">图片URL地址(例如:http://img.baidu.com/video/img/video

PHP文件操作 之打开远程文件

//配置php.ini 开启allow_url_fopen选项 //访问的文件有可读或者可写的权限 //$f = fopen('http://www.example.com/a.txt','rb'); //$f = fopen('http://www.example.com/a.txt','wb'); //fread($f,'读取的长度'); //访问远程文件 //打开远程文件 $f = fopen('http://www.baidu.com', rb); //判断打开文件是否成功 if (!$

自动化交互输入密码,进行远程文件复制

此脚本功能主要是找到/data1到/data11下面在当前时间一天以外的所有文件,并复制到另外一台新机器上面. 注意:重点检验自动化交互输入密码,进行远程文件复制功能 #!/usr/bin/pyth #coding=utf-8  #字符编码 import os  #os模块 import pexpect #自动交互模块 import time #导入时间模块 dir_name=os.popen("ls -l / |grep 'data[0-9]\{1,2\}'|awk '{print $NF}'