function formatfilesize( $data ) {
// bytes
if( $data < 1024 ) {
return $data . " bytes";
}
// kilobytes
else if( $data < 1024000 ) {
return round( ( $data / 1024 ), 1 ) . "k";
}
// megabytes
else {
return round( ( $data / 1024000 ), 1 ) . " MB";
}
}
?>Думаю, разобраться вам будет с нею несложно. Как видите, нам потребуется предварительно извлечь (заголовки) header information нашего звукового файла типа длительности duration, bit rate, audio channel и т.д. Чтобы было понятнее, это делает функция unpack для декодирования файла:
Далее нам естественно необходимо подключиться к самой базе данных MySQL, чтобы узнать ее размер. Определим переменную, которая будет содержать имя нашей базы данных. Замените "databasename" на имя своей базы данных:
$dbname = "databasename";
?>Ну а теперь нам осталось главное - вычислить размер нашей БД. Это делается очень просто - необходимо просто пройтись по каждой таблице БД сложить размер данных и индекса БД: mysql_select_db( $dbname );
$result = mysql_query( "SHOW TABLE STATUS" );
$dbsize = 0;
while( $row = mysql_fetch_array( $result ) ) {
$dbsize += $row[ "Data_length" ] + $row[ "Index_length" ];
}
?>Сейчас наш размер БД в байтах содержится в переменной $dbsise. Нам осталось лишь воспользваться упомянутой в начале статьи функцией formatfilesize() для форматирования этого размера (разделим его на кило-, мега-): echo "Размер базы данных составляет " . formatfilesize( $dbsize );
?>Вот, собственно, и все. Удачи!Автор: Николай Рудченко