note 45435 deleted from function.filesize by aidan

From: Date: Wed, 13 Jul 2005 03:14:27 +0000
Subject: note 45435 deleted from function.filesize by aidan
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-91847@lists.php.net to get a copy of this message
Note Submitter: ---- For the people that keep asking how to get the filesize for a remote file, i figured this little thing out utilizing curl. Hope this helps someone Kris. <?php /* * (mixed)remote_filesize($uri) * returns the size of a remote stream in bytes or * the string 'unknmown' */ function remote_filesize($uri) { // start output buffering ob_start(); // initialize curl with given uri $ch = curl_init($uri); // make sure we get the header curl_setopt($ch, CURLOPT_HEADER, 1); // make it a http HEAD request curl_setopt($ch, CURLOPT_NOBODY, 1); $okay = curl_exec($ch); curl_close($ch); // get the output buffer $head = ob_get_contents(); // clean the output buffer and return to previous // buffer settings ob_end_clean(); // gets you the numeric value from the Content-Length // field in the http header $regex = '/Content-Length:\s([0-9].+?)\s/'; $count = preg_match($regex, $head, $matches); // if there was a Content-Length field, its value // will now be in $matches[1] if (isset($matches[1])) { $size = $matches[1]; } else { $size = 'unknown'; } return $size; } ?>

« previous php.notes (#91847) next »