Comment convertir la taille des fichiers en octets en formats lisibles par l'homme en PHP ?

Patricia Arquette
Libérer: 2024-11-27 01:24:10
original
760 Les gens l'ont consulté

How Do I Convert File Sizes from Bytes to Human-Readable Formats in PHP?

Calcul de la taille des fichiers dans des formats lisibles par l'homme

Déterminer la taille des fichiers en unités significatives telles que les kilo-octets, les mégaoctets ou les gigaoctets est une tâche courante. Lorsque les fichiers sont stockés en octets, une conversion est nécessaire pour un affichage convivial.

Solution

La fonction PHP formatBytes() propose une solution. Voici comment cela fonctionne :

function formatBytes($bytes, $precision = 2) { 
    $units = array('B', 'KB', 'MB', 'GB', 'TB'); 
   
    $bytes = max($bytes, 0); 
    $pow = floor(($bytes ? log($bytes) : 0) / log(1024)); 
    $pow = min($pow, count($units) - 1); 
   
    // Uncomment one of the following alternatives
    // $bytes /= pow(1024, $pow);
    // $bytes /= (1 << (10 * $pow)); 
   
    return round($bytes, $precision) . $units[$pow]; 
} 
Copier après la connexion

Implémentation

  1. Créez un tableau $units contenant les noms des unités (B, KB, MB, etc.).
  2. Calculez la puissance de 1024 pour convertir les octets en caractères appropriés unité.
  3. Divisez $bytes par la puissance calculée pour obtenir la valeur convertie.
  4. Arrondissez le résultat à la précision spécifiée.
  5. Concaténez la valeur formatée avec le nom de l'unité correspondante. .

Exemple

Pour convertir 5445632 octets dans un format convivial avec deux décimales :

echo formatBytes(5445632, 2); // Output: 5.24 MB
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal