View file 2/3020.ru/system/functions/age.php

File size: 1.81Kb
<?php

/*
--------------------------------------------------
Oпределение возраста пользователя по дате рождения
--------------------------------------------------
*/
  
FUNCTION AGE($u, $y, $m, $d) { 
  
  //$u - юзер 
  //$y - год 
  //$m - месяц 
  //$d - день
  
  //Oпределяем настройки пользователя
  $user = DB::GET_STRING("SELECT * FROM `USERS_SETTINGS` WHERE `USER_ID` = '".$u."' LIMIT 1");
  
  IF (!$user['D_R']== NULL && !$user['M_R'] == NULL && !$user['G_R'] == NULL){
    
    IF ($m > DATE('m') || $m == DATE('m') && $d > DATE('d')){
      
      RETURN (DATE('Y') - $y - 1);
      
      $int = DATE('Y') - $y - 1;
    
    }ELSE{
      
      RETURN (DATE('Y') - $y);
      
      $int = DATE('Y') - $y;
    
    }
  
  } 

}

/*
-----------------------------------------
Функция вычисления наименования возраста. 
Например: год, года, лет
-----------------------------------------
*/

FUNCTION _AGE($user, $int, $expressions) {    
  
  //Oпределяем настройки пользователя
  $user = DB::GET_STRING("SELECT * FROM `USERS_SETTINGS` WHERE `USER_ID` = '".$user."' LIMIT 1");
  
  IF (!$user['D_R']== NULL && !$user['M_R'] == NULL && !$user['G_R'] == NULL){
    
    IF (COUNT($expressions) < 3) {
      
      $expressions[2] = $expressions[1];
    
    }
    
    $count = $int % 100;
    
    IF ($count >= 5 && $count <= 20) {
      
      $result = 2;
    
    }ELSE{
      
      $count = $count % 10;
    
    }
    
    IF ($count == 1) {
      
      $result = 0;
    
    }ELSEIF ($count >= 2 && $count <= 4) {
      
      $result = 1;
    
    }ELSE{
      
      $result = 2;
    
    }
    
    RETURN $int . ' ' . $expressions[$result];
  
  }

}

?>