נו מה קורה? היתי בטוח שיש פה תותחים משהו לא מהעולם.
בכל מקרה, מצאתי פתרון:
קוד:
function remote_file_size ($url)
{
$head = "";
$url_p = parse_url($url);
$host = $url_p["host"];
$path = $url_p["path"];
$fp = fsockopen($host, 80, $errno, $errstr, 20);
if(!$fp)
{ return false; }
else
{
fputs($fp, "HEAD ".$url." HTTP/1.1\r\n");
fputs($fp, "HOST: dummy\r\n");
fputs($fp, "Connection: close\r\n\r\n");
$headers = "";
while (!feof($fp)) {
$headers .= fgets ($fp, 128);
}
}
fclose ($fp);
$return = false;
$arr_headers = explode("\n", $headers);
foreach($arr_headers as $header) {
$s = "Content-Length: ";
if(substr(strtolower ($header), 0, strlen($s)) == strtolower($s)) {
$return = substr($header, strlen($s));
break;
}
}
return $return;
}
print ("Google logo is " . remote_file_size
("http://www.google.it/intl/it_it/images/logo.gif") . " bytes!");
מישהו מעוניין להתנדב ולהסביר בעצם מה הולך פה?