17.03.2025
Regina, Patryk, Zbigniew, Gertruda, Jan, Patrycjusz
Programowanie PHP - Obliczanie Rzeczywistej Wielkości Dysku / Pliku
Jest to klasa z rodzaju konwerterów, w sumie z PHP związana jedynie kodem. Ma praktyczne zastosowanie do obliczania rzeczywistej wielkości np dysku HDD po sformatowaniu. Wiadomo bowiem, że nasz dysk będzie miał inną pojemność przed sformatowaniem niż po.
WSPARCIE / FORUM
CODE : php
/**
* converter real size hdd
* copyright : (c) 2013 Andrzej Krokos
* version PHP : 5
* author : shreker983@gmail.com
* licence : GPL
*/
class real_size_hdd
{
// display form
function display_form( )
{
echo '<form method="post" action="">' ;
echo '<p style="font-family:arial; color:black; font-size:12px; font-weight:bold;">size : ' ;
echo '<input type="text" name="wielkosc" size="10" style="border: 1px solid; border-color: #C0C0C0 #000000 #000000 #C0C0C0; width:150px;" maxlength="10" />' ;
echo '<select name="wm">' ;
echo '<option value="KB">KB</option>' ;
echo '<option value="MB">MB</option>' ;
echo '<option value="GB">GB</option>' ;
echo '<option value="TB">TB</option>' ;
echo '</select>' ;
echo '<input type="submit" value="calculate" name="calculate" />' ;
echo '</form>' ;
}
// calculate size
function rozmiar( $size )
{
$filesizename = array ( ' Bytes' , ' KB' , ' MB' , ' GB' , ' TB' , ' PB' , ' EB' , ' ZB' , ' YB' ) ;
return round ( $size / pow ( 1024
, ( $i = floor ( log ( $size , 1024
) ) ) ) , 2
) . $filesizename [ $i ] ;
}
// show result
function wyswietl( )
{
if ( isset ( $_POST [ 'calculate' ] ) )
{
if ( ( $_POST [ 'wielkosc' ] == '' ) || ( $_POST [ 'wielkosc' ] < '1' ) || ! is_numeric ( $_POST [ 'wielkosc' ] ) )
{
echo '<p style="font-family:arial; color:red; font-size:12px; font-weight:bold;">Bad Data !</p>' ;
}
else if ( $_POST [ 'wielkosc' ] >= '1' )
{
echo '<p style="font-family:arial; color:black; font-size:12px; font-weight:normal;">' ;
if ( $_POST [ 'wm' ] == 'KB' )
{
$kww = round ( ( ( $_POST [ 'wielkosc' ] * 1024
) * 1000000000
) / 1024
/ 1024
/ 1024
, 2
) ;
echo 'HDD Size : ' . $_POST [ 'wielkosc' ] . ' KB = Real Size <b>' . $this -> rozmiar ( $kww ) . '</b>' ;
}
else if ( $_POST [ 'wm' ] == 'MB' )
{
$kww = round ( ( ( $_POST [ 'wielkosc' ] * 1024
* 1024
) * 1000000000
) / 1024
/ 1024
/ 1024
, 2
) ;
echo 'HDD Size : ' . $_POST [ 'wielkosc' ] . ' MB = Real Size <b>' . $this -> rozmiar ( $kww ) . '</b>' ;
}
else if ( $_POST [ 'wm' ] == 'GB' )
{
$kww = round ( ( ( $_POST [ 'wielkosc' ] * 1024
* 1024
* 1024
) * 1000000000
) / 1024
/ 1024
/ 1024
, 2
) ;
echo 'HDD Size : ' . $_POST [ 'wielkosc' ] . ' GB = Real Size <b>' . $this -> rozmiar ( $kww ) . '</b>' ;
}
else if ( $_POST [ 'wm' ] == 'TB' )
{
$kww = round ( ( ( $_POST [ 'wielkosc' ] * 1024
* 1024
* 1024
* 1024
) * 1000000000
) / 1024
/ 1024
/ 1024
, 2
) ;
echo 'HDD Size : ' . $_POST [ 'wielkosc' ] . ' TB = Real Size <b>' . $this -> rozmiar ( $kww ) . '</b>' ;
}
echo '</p>' ;
}
}
}
}
// examples
$rsh = new real_size_hdd( ) ;
$rsh -> display_form ( ) ;
$rsh -> wyswietl ( ) ;
online : 1 użytkownik, dziś odwiedziło : 96 osób
Zgodnie z nowelizacją ustawy o Prawie Telekomunikacyjnym informujemy, że strona krokos.net.pl w swoim działaniu korzysta z zapisywanych informacji w postaci ciasteczek (ang. cookies).
powered by scms © 2004 - 2025
design by sid