вземане на размер на файл

kitchenbg

Registered
Здравейте, преди време ползвах една функция която ми показваше размера на качения файл, но сега като се опитвам да я сложа пак и ми дава грешка :shock:
ето кода който ползвам
Код:
<?php
$size=$row_Translation['pathfile'];
//$size=filesize($file);
//echo $size;


?>

<?php
// the $file without the path, put the path in the $path-variable (based on the doc. root)
function file_size($file, $path = "") {
    global $DOCUMENT_ROOT;
    $bytes = array("B", "KB", "MB", "GB", "TB", "PB");
    $file_with_path = $DOCUMENT_ROOT."/".$path."/".$file;
    // replace (possible) double slashes with a single one
    $file_with_path = str_replace("//", "/", $file_with_path);
    $size = filesize($file_with_path);
    $i = 0;
    while ($size >= 1024) { //divide the filesize (in bytes) with 1024 to get "bigger" bytes
        $size = $size/1024;
        $i++;
    }
    if ($i > 1) {
        // you can change this number if you like (for more precision)
        return round($size,2)." ".$bytes[$i];
    } else {
        return round($size,0)." ".$bytes[$i];
    }
}
// example for using
echo file_size($size, "download");
?>

а ето и грешката която ми дава
Warning: filesize() [function.filesize]: open_basedir restriction in effect. File(/download/images.rar) is not within the allowed path(s):

чудя се дали има и друг начин как да показажа размера на файла?
 
Защо не използваш този..

<?php
$file = "index.php"; //Тука въведете името на файла, може и с директория.
$size = filesize($file);
function bafz($size){
$i=0;
$iec = array("K", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB");
while (($size/1024)>1) {
$size=$size/1024;
$i++;
}
return substr($size,0,strpos($size,'.')+4).$iec[$i];
}
echo bafz($size);
?>

По прост и по добър ;)
 

Back
Горе