Master-X
Форум | Новости | Статьи
Главная » Форум » Программинг, Скрипты, Софт, Сервисы » 
Тема: Проверка существования файла на удаленном сервере
цитата
28/03/12 в 19:53
 Lexikon
Нужно проверить существование файла, чтоб попусту не запускать процесс.

Попробовал эти варианты:


<?php


$url = "https://www.master-x.com/banners/defaultsponsor.gif";

$Headers = @get_headers($url);

if(strpos('200', $Headers[0])) {

echo "YES";

} else {

echo "NO";}

?>


Еще один :

<?php
$file = 'https://www.master-x.com/banners/defaultsponsor.gif';

if (file_exists($file)) {echo 'YES';}
     else {echo 'NO';}
?>


Заключительный:

<?php

$filename = "https://www.master-x.com/banners/defaultsponsor.gif";
if (!is_file($filename) || filesize($filename) < 10) {
    echo "File Not Found or File Size < 10b";
}
else {
    echo "File Exists or File Size > 10b";
}
?>


Все скрипты показали что файла нет.
Но файл существует.
цитата
28/03/12 в 20:00
 Stek
Код:


if ('200' == check_url(https://www.master-x.com/banners/defaultsponsor.gif)) {
  print 'Found';
} else {
  print 'Not found';
}

function check_url($url) {
    $c = curl_init();
    curl_setopt($c, CURLOPT_URL, $url);
    curl_setopt($c, CURLOPT_REFERER, 'http://www.google.com');
    curl_setopt($, CURLOPT_USERAGENT, 'Googlebot/2.1 (+http://www.google.com/bot.html)');
    curl_setopt($c, CURLOPT_HEADER, 1);
    curl_setopt($c, CURLOPT_NOBODY, 1);
    curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
    if (!curl_exec($c)) { return false; }

    $httpcode = curl_getinfo($c, CURLINFO_HTTP_CODE);
}


примерно так.
цитата
28/03/12 в 20:42
 Lexikon
Спасибо!
вот еще сам слепил:


<?

$heads = get_headers('https://www.master-x.com/banners/defaultsponsor.gif');
//echo $heads[0]."<br>";
$pos = strpos($heads[0], "200");
if ($pos === false) {
    echo "No File";
} else {
    echo "Yes File";
}
   
?>


Эта страница в полной версии