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
=
fread
(
$fp
, 128);
fclose(
$fp
);
if
(trim(
$first_header
) ==
""
)
return
false;
if
(!preg_match(
"/200/"
,
$first_header
) || preg_match(
"/Location:/"
,
$first_header
))
return
false;
return
true;
}