Tuesday, 23 January 2018

A easy way to check the file size

Converts a string like "5 MB", or "400 KB" to the equivalent in Bytes.

function StringSizeToBytes($Size){

    $Unit = strtolower($Size);
    $Unit = preg_replace('/[^a-z]/', '', $Unit);

    $Value = intval(preg_replace('/[^0-9]/', '', $Size));

    $Units = array('b'=>0, 'kb'=>1, 'mb'=>2, 'gb'=>3, 'tb'=>4);
    $Exponent = isset($Units[$Unit]) ? $Units[$Unit] : 0;

    return ($Value * pow(1024, $Exponent));           
}

// Example usage:
// Check if a file is bigger than 10 MB

if (filesize('example.zip') > StringSizeToBytes('10 MB')){
    print 'File is to big !';
}
else {
    print 'File is okay';
}

0 comments:

Post a Comment