Com a função PHP size_format() você converte o tamanho em bytes de um arquivo para um formato mais legível para humanos. Segue abaixo alguns exemplos de valores e o resultado para cada um deles:

<?php
echo size_format(1424); // Exibe: 1 KB
echo size_format(1648576); // Exibe: 2 MBCode language: PHP (php)

É possível também definir o número de casas decimais ao adicionar um segundo parâmetro na função. Por padrão o seu valor é zero.

<?php
echo size_format(1424, 2); // Exibe: 1,39 KB
echo size_format(1648576, 2); // Exibe: 1,57 MBCode language: PHP (php)

Note que o tamanho dos arquivos é automaticamente arredondado dependendo do número de casas decimais escolhidas. No primeiro exemplo, 1,57 MB foi arredondado para 2 MB quando o número de casas decimais foi zero.

Utilizando size_format() para exibir o tamanho de um arquivo no WordPress

Em várias situações é útil exibir o tamanho do arquivo como, por exemplo, em uma página de downloads. Dado o ID de um arquivo ($arquivo_id) que foi enviado para o WordPress, você poderá exibir o seu tamanho com o código abaixo:

<?php
// Pega o caminho do arquivo
$arquivo = get_attached_file( $arquivo_id );
// Verifica se o arquivo existe
if ( $arquivo ) {
	// Pega o tamanho do arquivo
	$arquivo_tamanho = filesize( $arquivo );
	// Imprime o tamanho do arquivo em um formato legível
	echo size_format( $arquivo_tamanho, 2 );
}
Code language: PHP (php)

No código acima, usamos a função do WordPress get_attached_file() para pegar o caminho do arquivo e a função nativa do PHP filesize() para pegar o tamanho dele em bytes.



Comments

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *