Date Relative

Le 5 mars 2014

Catégorie: News

Hello à tous, vous voulez une date relative du genre 'posté il y a 5 minutes, 1 jours' et si plus d'une semaine la date est remise du genre 'posté le 22 Janvier' ? et si c'est l'année dernière la date devient 25 décembre 2013 par exemple ?
Voici la démarche à suivre :

Ouvrez nuked.php et insérez cette function :

//date relative
function fTime($date) {

	// Initialisation
	
	$secondes 	= time() - $date; $secondes>1 ? $secondes .= ' secondes' : $secondes .= ' seconde';
	$minutes	= '';
	$heures		= '';
	$jours		= '';
	
	$dateRelative   = 'Il y a '. $secondes;
	
	// Début du balayage
	
	if ($secondes > 60) { // S'il y a plus d'une minute
		
		$minutes 	= floor($secondes/60) ; $minutes>1 ? $minutes .= ' minutes' : $minutes .= ' minute';
		$secondes 	= floor($secondes%60) ; $secondes>1 ? $secondes .= ' secondes' : $secondes .= ' seconde';
		
		$dateRelative   = 'Il y a '. $minutes .' ';
	}
	
	if ($minutes > 60) { // S'il y a plus d'une heure
	
		$heures		= floor($minutes/60) ; $heures>1 ? $heures .= ' heures' : $heures .= ' heure';
		$minutes	= floor($minutes%60) ; $minutes>1 ? $minutes .= ' minutes' : $minutes .= ' minute';
		
		$dateRelative   = 'Il y a '. $heures .'';
	}
	
	if ($heures > 24) { // S'il y a plus d'un jour
	
		$jours		= floor($heures/24) ; $jours>1 ? $jours .= ' jours' : $jours .= ' jour';
		$heures		= floor($heures%24) ; $heures>1 ? $heures .= ' heures' : $heures .= ' heure';
		
		$dateRelative = 'Il y a '. $jours .'';
	}
	
	if ($jours > 7) { // S'il y a plus d'une semaine, on affiche la date normale
	
			$mois	    = date("m",$date)-1;
			$calendrier = array('janvier','février','mars','avril','mai','juin','juillet','aout','septembre', 'octobre','novembre','décembre');
		
		$jour 		= date("j",$date);
		$mois		= $calendrier[$mois];
		date("Y",$date) != date("Y") ? $annee = date("Y",$date) : $annee = '';
		
		$dateRelative   = 'Le '. $jour .' '. $mois .' '. $annee;
		
		}
	
	return $dateRelative;
}
après quand vous voulez changé la date lors d'une requête faite comme ceci : 

$date = ftime($date);

au lieu de:

$date = nkDate($date);
Vous pouvez édité le fichier en question avec notepad++ par exemple ^^ Voilà si vous avez un soucis postez dans le fofo !