");
}
}
//
// Affiche la taille demandée avec la bonne unité et avec $nb chiffres après la virgule
// paramètres : $taille en octects, $nb un entier
//
function aff_taille($taille,$nb) {
for ($i = 0; $taille > 10240; $i++) {
$taille /= 1024;
}
$unites = array(' o', ' ko', ' mo', ' go', ' to');
$taille_txt = number_format($taille, $nb, ',', ' ') . $unites[$i];
echo($taille_txt);
}
//
// Affiche le nombre (entier) demandé sous forme "arrondi" au millier, million, milliard près
// (Exemple : "19k" pour 19384 , "42m" pour 42356478)
// paramètres : $req : nombre entier à afficher
//
function aff_req($req) {
for ($i = 0; $req > 10000; $i++) {
$req /= 1000;
}
$unites = array('', 'k', 'm', 'g', 't');
$req = number_format($req, 0, ',', ' ') . $unites[$i];
echo($req);
}
//
// Calcule la taille en octets d'une bdd et renvoie un tableau contenant
// la taille totale, la taille des données et la taille des index (dans cet ordre)
// /!\ Il faut préciser la version de MySQL (4 ou 5)
// Exemple : taille_bdd(locahost, base1, toto, passtoto, 4);
//
function taille_bdd($BDD_serveur, $BDD_base, $BDD_login, $BDD_pass, $version_mysql) {
$id_data = ($version_mysql==4) ? 5 : 6; // numéro de la colonne "Data_length" (différente en fonction de la version de MySQL)
$id_index = ($version_mysql==4) ? 7 : 8; // numéro de la colonne "Index_length" (différente en fonction de la version de MySQL)
$data = 0;
$index = 0;
if($BDD_serveur != '') {
$lien_db = @mysql_connect($BDD_serveur, $BDD_login, $BDD_pass);
if($lien_db) {
$sel = @mysql_select_db($BDD_base,$lien_db);
if($sel) {
$result_query = mysql_query("SHOW TABLE STATUS FROM $BDD_base");
if(($result_query)) {
while ($result_query && $row=mysql_fetch_row($result_query)) {
$data = $data + $row[$id_data];
$index = $index + $row[$id_index];
}
}
}
mysql_close($lien_db);
}
}
return array($data + $index, $data, $index);
}
//
// Lit la première ligne du fichier $fichier
// paramètre : $fichier : chemin relatif du script vers le fichier à lire
//
function lire_fichier($fichier) {
$tmp = 0;
if(is_readable($fichier)) {
$file = fopen($fichier, 'r');
$tmp = fgets($file);
fclose($file);
$tmp = str_replace("\n", '', $tmp);
}
return $tmp;
}
//
// Pour obtenir le nombre de requêtes ou d'octets d'un jour précis
// paramètres : $type = "requetes" ou "octets" et $date="2036-12-25"
//
function get_stats_jour($type, $date) {
global $dir_requetes;
$tmp = 0;
$liste = glob($dir_requetes.$date.'/*_'.$type);
foreach($liste as $fichier) {
$tmp = $tmp + lire_fichier($fichier);
}
return $tmp;
}
//
// Pour obtenir le nombre de requêtes ou d'octets d'un mois
// paramètres : $type = "requetes" ou "octets" et $annee_mois="2036-01" et $jour_limite="24"
//
function get_stats_mois($type, $annee_mois, $jour_limite) {
$tmp = 0;
$indice = min($jour_limite, '9');
for($i=1; $i<=$indice; $i++) {
$tmp = $tmp + get_stats_jour($type, $annee_mois.'-0'.$i);
}
for($i=$indice+1; $i<=$jour_limite; $i++) {
$tmp = $tmp + get_stats_jour($type, $annee_mois.'-'.$i);
}
return $tmp;
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Phpinfo
////////////////////////
if(isset($_GET['phpinfo']))
{
echo("