Formattage

This commit is contained in:
Michael RICOIS 2016-02-26 09:44:12 +00:00
parent 42043337bc
commit 498bb5bdc0

View File

@ -1,210 +1,206 @@
<?php
require_once 'framework/common/mysql.php';
require_once 'framework/common/strings.php';
require_once 'framework/common/dates.php';
require_once 'framework/common/mysql.php';
require_once 'framework/common/strings.php';
require_once 'framework/common/dates.php';
define ('REP_TEMP', LOG_PATH);
// Environnement : DEV ou PRD
define ('ENV', 'PRD');
define ('EOL', "\n");
define ('REP_TEMP', LOG_PATH);
// Environnement : DEV ou PRD
define ('ENV', 'PRD');
define ('EOL', "\n");
define ('MODE_CLI', 1);
define ('MODE_WWW', 2);
define ('MODE_WS', 3);
define ('MODE_CLI', 1);
define ('MODE_WWW', 2);
define ('MODE_WS', 3);
if (@$_SERVER['argc']>0) define('MODE_EXEC', MODE_CLI);
else define('MODE_EXEC', MODE_WS);
/** @todo Gérer la distinction du mode WWW du WS
else define('MODE_EXEC', MODE_WWW);
if (@$_SERVER['argc']>0) define('MODE_EXEC', MODE_CLI);
else define('MODE_EXEC', MODE_WS);
/** TimeStamp Unix
** Si $onlyMiliSec=true, retourne juste les milisec du timestamp
**/
function microtime_float($onlyMiliSec=false) {
list($usec, $sec) = explode(' ', microtime());
if (!$onlyMiliSec)
return ((float)$usec + (float)$sec);
else
return $usec;
}
/** Fait une pause aléatoire entre 0 et 15 secondes par défaut
**/
function randsleep($min_sec=0, $max_sec=15) {
sleep(rand($min_sec, $max_sec));
}
/** Retourne la factorielle d'un nombre : 4! = 1*2*3*4 = 24
**/
function factorielle($nbr) {
if($nbr === 0) // condition d'arret
return 1;
else
return $nbr*factorielle($nbr-1);
}
/** Vérification que la variable demandé respecte bien les règles passées en paramètres
* @param mixed Variable à tester
* @param int Longueur minimum en caractère de la variable
* @param int Longueur mximum
* @param char(1) Type de variable <b>A</b>:Alphanumérique / <b>N</b>:Numérique
* @param mixed Message textuel d'erreur à afficher en cas d'erreur ou false
* @return mixed true, false ou Message d'erreur passé en paramètre
*/
function valideData($variable, $taille_min, $taille_max, $type_variable, $erreur=false) {
if ( strlen((string)$variable) < $taille_min )
return $erreur;
/** TimeStamp Unix
** Si $onlyMiliSec=true, retourne juste les milisec du timestamp
**/
function microtime_float($onlyMiliSec=false) {
list($usec, $sec) = explode(' ', microtime());
if (!$onlyMiliSec)
return ((float)$usec + (float)$sec);
else
return $usec;
}
if ( strlen((string)$variable) > $taille_max )
return $erreur;
/** Fait une pause aléatoire entre 0 et 15 secondes par défaut
**/
function randsleep($min_sec=0, $max_sec=15) {
sleep(rand($min_sec, $max_sec));
}
/** Retourne la factorielle d'un nombre : 4! = 1*2*3*4 = 24
**/
function factorielle($nbr) {
if($nbr === 0) // condition d'arret
return 1;
else
return $nbr*factorielle($nbr-1);
}
/** Vérification que la variable demandé respecte bien les règles passées en paramètres
* @param mixed Variable à tester
* @param int Longueur minimum en caractère de la variable
* @param int Longueur mximum
* @param char(1) Type de variable <b>A</b>:Alphanumérique / <b>N</b>:Numérique
* @param mixed Message textuel d'erreur à afficher en cas d'erreur ou false
* @return mixed true, false ou Message d'erreur passé en paramètre
*/
function valideData($variable, $taille_min, $taille_max, $type_variable, $erreur=false) {
if ( strlen((string)$variable) < $taille_min )
return $erreur;
if ( strlen((string)$variable) > $taille_max )
return $erreur;
if ( $type_variable == 'A' )
if ( is_string($variable) == true )
return true;
else
return $erreur;
elseif ( $type_variable == 'N')
{
for ($i=0; $i < strlen((string)$variable); $i++)
{
$car = substr((string)$variable,$i,1);
if ($car<'0' || $car>'9')
return $erreur;
}
return true;
}
return $erreur;
}
function adapteOCtets($size) {
$kb = 1024; // Kilobyte
$mb = 1024 * $kb; // Megabyte
$gb = 1024 * $mb; // Gigabyte
$tb = 1024 * $gb; // Terabyte
if($size==0) return '0';
else if($size < $kb) return $size.'o';
else if($size < $mb) return round($size/$kb,2).'ko';
else if($size < $gb) return round($size/$mb,2).'Mo';
else if($size < $tb) return round($size/$gb,2).'Go';
else return round($size/$tb,2).'To';
}
/**
** Enregistrer une information dans la log
**
** @param string $debugLevel E=Error, W=Warning, N=Notice, I=Info, D=Debug
** @param string $message Message d'erreur à inscrire dans la log
** @param integer $line __LINE__
** @param string $file __FILE__
** @param string $function __FUNCTION__
** @param string $class __CLASS___
**/
function debugLog($debugLevel, $message, $line, $file, $function, $class) {
if (!file_exists(LOG_PATH.'/debug.log')) {
$fp=@fopen(LOG_PATH.'/debug.log', 'a');
@fwrite($fp, 'Date/Heure;Niveau;Script;Login;Password;Adresse IP;Action SOAP;Ligne;Fichier;Fonction;Classe;Domaine;POST DATA;Memory;Message'.EOL);
} else
$fp=@fopen(LOG_PATH.'/debug.log', 'a');
@fwrite($fp, date('Y/m/d-H:i:s') .';'. $debugLevel .';'. $_SERVER['PHP_SELF'] .';'. $_SERVER['PHP_AUTH_USER'] .';'. $_SERVER['PHP_AUTH_PW'] .';'.
$_SERVER['REMOTE_ADDR'] .';'. $_SERVER['HTTP_SOAPACTION'] .';'.$line.';'. $file.';'. $function.';'. $class .';'.
@gethostbyaddr($_SERVER['REMOTE_ADDR']) .';'. $HTTP_RAW_POST_DATA .';'. @memory_get_usage().';'. $message . EOL);
@fclose($fp);
if ($debugLevel=='E'){
if (!file_exists(LOG_PATH.'/debugError.log')) {
$fp=@fopen(LOG_PATH.'/debugError.log', 'a');
@fwrite($fp, 'Date/Heure;Niveau;Script;Login;Password;Adresse IP;Action SOAP;Ligne;Fichier;Fonction;Classe;Domaine;POST DATA;Message'.EOL);
} else
$fp=fopen(LOG_PATH.'/debugError.log', 'a');
@fwrite($fp, date('Y/m/d-H:i:s') .';'. $debugLevel .';'. $_SERVER['PHP_SELF'] .';'. $_SERVER['PHP_AUTH_USER'] .';'. $_SERVER['PHP_AUTH_PW'] .';'.
$_SERVER['REMOTE_ADDR'] .';'. $_SERVER['HTTP_SOAPACTION'] .';'.$line.';'. $file.';'. $function.';'. $class .';'.
@gethostbyaddr($_SERVER['REMOTE_ADDR']) .';'. $HTTP_RAW_POST_DATA .';'. @memory_get_usage().';'. $message . EOL);
@fclose($fp);
//die($message);
}
}
function prepareString($str) {
$tabReplace = array(
'œ' => "oe",
''.chr(160) => '',
);
$str = utf8_decode($str);
$str = strtr($str,$tabReplace);
return utf8_encode($str);
}
/**
** Déplacement d'un fichier. Retourne false en cas d'erreur.
**
** @param string $from
** @param string $to
** @return bool
**/
function move($from, $to) {
return (copy($from, $to) and unlink($from));
}
/** Converti une IP en nombre
**
** @param string $ip Adresse IP
** @return integer
**/
function getIpNumber($ip) {
$tab=explode('.', $ip);
return (($tab[0]*256*256*256) + ($tab[1]*256*256) + ($tab[2]*256) + ($tab[3]));
}
/** Vérifie si une IP est dans une plage du type 192.168.3.1-192.168.3.10
**
** @param string $plage_1 Plage IP de début
** @param string $plage_2 Plage IP de fin
** @param string $ip Adresse IP à tester
** @return boolean
**/
function in_plage($plage_1,$plage_2,$ip){
$ip2=getIpNumber($ip);
if ($ip2>=getIpNumber($plage_1) && $ip2<=getIpNumber($plage_2))
if ( $type_variable == 'A' )
if ( is_string($variable) == true )
return true;
else
return false;
}
return $erreur;
/** Controle si une adresse IP est dans une liste des IP communiquées sous la forme 192.168.3.5-192.68.3.10;192.168.3.*;192.168.3.10
**
** @param string $strPlageIP La plage d'adresses IP
** @param string $adresseIP L'adresse IP à tester
** @return boolean
**/
function checkPlagesIp($strPlageIP, $adresseIP) {
$connected=false;
$tabIpAllowed=explode(';', trim($strPlageIP));
if (count($tabIpAllowed)==1 && $tabIpAllowed[0]=='')
$tabIpAllowed=array();
foreach ($tabIpAllowed as $ip) {
$tabPlages=explode('-', $ip);
// C'est une plage d'adresse '-'
if (isset($tabPlages[1]))
$connected=in_plage($tabPlages[0],$tabPlages[1],$adresseIP);
else {
// C'est une adresse avec ou sans masque '*'
if (preg_match('/^'.str_replace('*','.*',str_replace('.','\.',$ip)).'$/', $adresseIP) )
$connected=true;
}
if ($connected) break;
}
if (count($tabIpAllowed)==0) return false;
elseif (!$connected) {
return false;
elseif ( $type_variable == 'N')
{
for ($i=0; $i < strlen((string)$variable); $i++)
{
$car = substr((string)$variable,$i,1);
if ($car<'0' || $car>'9')
return $erreur;
}
return true;
}
return $erreur;
}
function adapteOCtets($size) {
$kb = 1024; // Kilobyte
$mb = 1024 * $kb; // Megabyte
$gb = 1024 * $mb; // Gigabyte
$tb = 1024 * $gb; // Terabyte
if($size==0) return '0';
else if($size < $kb) return $size.'o';
else if($size < $mb) return round($size/$kb,2).'ko';
else if($size < $gb) return round($size/$mb,2).'Mo';
else if($size < $tb) return round($size/$gb,2).'Go';
else return round($size/$tb,2).'To';
}
/**
** Enregistrer une information dans la log
**
** @param string $debugLevel E=Error, W=Warning, N=Notice, I=Info, D=Debug
** @param string $message Message d'erreur à inscrire dans la log
** @param integer $line __LINE__
** @param string $file __FILE__
** @param string $function __FUNCTION__
** @param string $class __CLASS___
**/
function debugLog($debugLevel, $message, $line, $file, $function, $class) {
if (!file_exists(LOG_PATH.'/debug.log')) {
$fp=@fopen(LOG_PATH.'/debug.log', 'a');
@fwrite($fp, 'Date/Heure;Niveau;Script;Login;Password;Adresse IP;Action SOAP;Ligne;Fichier;Fonction;Classe;Domaine;POST DATA;Memory;Message'.EOL);
} else
$fp=@fopen(LOG_PATH.'/debug.log', 'a');
@fwrite($fp, date('Y/m/d-H:i:s') .';'. $debugLevel .';'. $_SERVER['PHP_SELF'] .';'. $_SERVER['PHP_AUTH_USER'] .';'. $_SERVER['PHP_AUTH_PW'] .';'.
$_SERVER['REMOTE_ADDR'] .';'. $_SERVER['HTTP_SOAPACTION'] .';'.$line.';'. $file.';'. $function.';'. $class .';'.
@gethostbyaddr($_SERVER['REMOTE_ADDR']) .';'. $HTTP_RAW_POST_DATA .';'. @memory_get_usage().';'. $message . EOL);
@fclose($fp);
if ($debugLevel=='E'){
if (!file_exists(LOG_PATH.'/debugError.log')) {
$fp=@fopen(LOG_PATH.'/debugError.log', 'a');
@fwrite($fp, 'Date/Heure;Niveau;Script;Login;Password;Adresse IP;Action SOAP;Ligne;Fichier;Fonction;Classe;Domaine;POST DATA;Message'.EOL);
} else
$fp=fopen(LOG_PATH.'/debugError.log', 'a');
@fwrite($fp, date('Y/m/d-H:i:s') .';'. $debugLevel .';'. $_SERVER['PHP_SELF'] .';'. $_SERVER['PHP_AUTH_USER'] .';'. $_SERVER['PHP_AUTH_PW'] .';'.
$_SERVER['REMOTE_ADDR'] .';'. $_SERVER['HTTP_SOAPACTION'] .';'.$line.';'. $file.';'. $function.';'. $class .';'.
@gethostbyaddr($_SERVER['REMOTE_ADDR']) .';'. $HTTP_RAW_POST_DATA .';'. @memory_get_usage().';'. $message . EOL);
@fclose($fp);
//die($message);
}
}
function prepareString($str) {
$tabReplace = array(
'œ' => "oe",
''.chr(160) => '',
);
$str = utf8_decode($str);
$str = strtr($str,$tabReplace);
return utf8_encode($str);
}
/**
** Déplacement d'un fichier. Retourne false en cas d'erreur.
**
** @param string $from
** @param string $to
** @return bool
**/
function move($from, $to) {
return (copy($from, $to) and unlink($from));
}
/** Converti une IP en nombre
**
** @param string $ip Adresse IP
** @return integer
**/
function getIpNumber($ip) {
$tab=explode('.', $ip);
return (($tab[0]*256*256*256) + ($tab[1]*256*256) + ($tab[2]*256) + ($tab[3]));
}
/** Vérifie si une IP est dans une plage du type 192.168.3.1-192.168.3.10
**
** @param string $plage_1 Plage IP de début
** @param string $plage_2 Plage IP de fin
** @param string $ip Adresse IP à tester
** @return boolean
**/
function in_plage($plage_1,$plage_2,$ip){
$ip2=getIpNumber($ip);
if ($ip2>=getIpNumber($plage_1) && $ip2<=getIpNumber($plage_2))
return true;
else
return false;
}
/** Controle si une adresse IP est dans une liste des IP communiquées sous la forme 192.168.3.5-192.68.3.10;192.168.3.*;192.168.3.10
**
** @param string $strPlageIP La plage d'adresses IP
** @param string $adresseIP L'adresse IP à tester
** @return boolean
**/
function checkPlagesIp($strPlageIP, $adresseIP) {
$connected=false;
$tabIpAllowed=explode(';', trim($strPlageIP));
if (count($tabIpAllowed)==1 && $tabIpAllowed[0]=='')
$tabIpAllowed=array();
foreach ($tabIpAllowed as $ip) {
$tabPlages=explode('-', $ip);
// C'est une plage d'adresse '-'
if (isset($tabPlages[1]))
$connected=in_plage($tabPlages[0],$tabPlages[1],$adresseIP);
else {
// C'est une adresse avec ou sans masque '*'
if (preg_match('/^'.str_replace('*','.*',str_replace('.','\.',$ip)).'$/', $adresseIP) )
$connected=true;
}
if ($connected) break;
}
if (count($tabIpAllowed)==0) return false;
elseif (!$connected) {
return false;
}
return true;
}
/**
* @return bool