0f3664169778820b7a7ee37c73755b03056c0602
3 /***************************************************************************\
4 * SPIP, Systeme de publication pour l'internet *
6 * Copyright (c) 2001-2014 *
7 * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
9 * Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
10 * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
11 \***************************************************************************/
13 if (!defined("_ECRIRE_INC_VERSION")) return;
16 * Calculer la moyenne glissante sur un nombre d'echantillons donnes
17 * @param int|bool $valeur
21 function moyenne_glissante($valeur = false, $glisse=0) {
23 // pas d'argument, raz de la moyenne
24 if ($valeur === false) {
29 // argument, on l'ajoute au tableau...
30 // surplus, on enleve...
32 if (count($v) > $glisse)
35 return round(statistiques_moyenne($v),2);
39 * Calculer la moyenne d'un tableau de valeurs
41 * http://doc.spip.org/@statistiques_moyenne
46 function statistiques_moyenne($tab){
49 foreach($tab as $v) $moyenne +
= $v;
50 return $moyenne / count($tab);
54 * Construire un tableau par popularite
55 * classemnt => id_truc
57 * @param string $serveur
60 function classement_populaires($type, $serveur=''){
61 static $classement = array();
62 if (isset($classement[$type]))
63 return $classement[$type];
64 $classement[$type] = sql_allfetsel(id_table_objet($type, $serveur), table_objet_sql($type, $serveur), "statut='publie' AND popularite > 0", "", "popularite DESC",'','',$serveur);
65 $classement[$type] = array_map('reset',$classement[$type]);
66 return $classement[$type];