crawl bot
Infoscript - Desenvolvimento web
infoscript_logo
PHP / MySQL
Real Size Bytes
Publicado por antlou em 22/11/2015

Vou expor aqui uma class simples em PHP para quantificar o tamanho real disponivel numa unidade de armazenamento HDD.
Passemos então ao código.
RealSizeBytes.class.php
<?php    
/*
********************************************
* RealSizeBytes.class                                      
* Author:antlou                            
* Version:1.0                              
* Date:21/11/2015
* Verson PHP 5                        
********************************************
*/
    //ini_set('display_errors', 'on'); 
    //error_reporting(E_ALL);

class RealSizeBytes {

    
// display form
    
function display_form(){
    echo 
'<form method="post" action="">
    <p style="font-family:arial; 
        color:black; 
        font-size:12px; 
        font-weight:bold;">
    size : >
    <input type="text" name="tamanho" size="10" 
        style="border: 1px solid; 
        width:150px;" 
        maxlenlth="10" />
    <select name="unidade">
        <option value="KB">KB</option>
        <option value="MB">MB</option>
        <option value="GB">GB</option>
        <option value="TB">TB</option>
    </select> 
    <input type="submit" value="calcular" name="calculate" />
    </form>'
;
    }

        
// calculate
    
function multiplo($size){
        
$filesizename = array(' Bytes',' KB',' MB',' GB',
    
' TB',' PB',' EB',' ZB',' YB');
        return 
round($size/pow(1024
    (
$i floor(log($size1024)))), 2).$filesizename[$i];
    }

        
// show result    
    
function exibir(){
        if (isset(
$_POST['calculate'])){
               if ((
$_POST['tamanho'] == ''
        || (
$_POST['tamanho'] < '1'
        || !
is_numeric($_POST['tamanho'])) {
            echo 
'<p style="font-family:arial; 
        color:red; 
        font-size:12px; 
        font-weight:bold;">
            Campo vazio!</p>'
;
            }else if (
$_POST['tamanho'] >= '1') {
            echo 
'<p style="font-family:arial; 
        color:black; 
        font-size:12px; 
        font-weight:normal;'
;
            if (
$_POST['unidade'] == 'KB'{
                
$kww round((
        (
$_POST['tamanho']*1024)*1000000000)
    /
1024/1024/10242);
                echo 
'Size : '.$_POST['tamanho'].
    KB = Real Size '
.$this->multiplo($kww); 
            }else if (
$_POST['unidade'] == 'MB'){
                
$kww round((
        (
$_POST['tamanho']*1024*1024)*1000000000)
    /
1024/1024/10242); 
                echo 
'Size : '.$_POST['tamanho'].
    MB = Real Size '
.$this->multiplo($kww);
            }else if (
$_POST['unidade'] == 'GB'){
                
$kww round((
        (
$_POST['tamanho']*1024*1024*1024)*1000000000)
    /
1024/1024/10242); 
                echo 
'Size : '.$_POST['tamanho'].
    GB = Real Size '
.$this->multiplo($kww);
            }else if (
$_POST['unidade'] == 'TB'){
                
$kww round((
        (
$_POST['tamanho']*1024*1024*1024*1024)*1000000000)
    /
1024/1024/10242); 
                echo 
'Size : '.$_POST['tamanho'].
    TB = Real Size '
.$this->multiplo($kww);
            }
            echo 
'</p>';        
            }
        }
    }
}        
?>

RealSizeBytes.php
<?php    
/*
********************************************
* RealSizeBytes                                     
* Author:antlou                            
* Version:1.0                              
* Date:21/11/2015
* Verson PHP 5                        
********************************************
*/
    
require_once('RealSizeBytes_class.php');

    
$rsh = new RealConverterBytes();
    
$rsh->display_form();
    
$rsh->exibir();
    
?>

Multiplos:
KB (kiloBytes) = 103
MB (megaBytes) = 106
GB (gigaBytes) = 109
TB (teraBytes) = 1012
PB (petaBytes) = 1015
EB (exaBytes) = 1018
ZB (zettaBytes) = 1021
YB (yottaBytes) = 1024

Resultado:

Size :


Download Código
Espero ter sido útil. Deixe avaliação ao script.
1 votos - 5 pontos - 15 downloads
Média : 5,000

Infoscript - Desenvolvimento de websites, e-commerce e programação

Infoscript tem soluções para desenvolvimento web e programação para aproximar os seus clientes às necessidades atuais do mercado.
O design de produto, a criação de websites e lojas online entre outros, são os principais serviços que temos para lhe oferecer.
Contate-nos através do endereço geral@infoscript.pt
Nós teremos uma solução para si à medida.