Précédent   Forum des professionnels en informatique > PHP > Langage > Syntaxe
Syntaxe Forum d'entraide sur la syntaxe de PHP et la POO. Avant de poster -> FAQ syntaxe, Cours d'initiation et cours de POO
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/07/2011, 19h03   #1
Débutant
 
Inscription : mai 2005
Messages : 1 957
Détails du profil
Informations personnelles :
Localisation : Suisse

Informations forums :
Inscription : mai 2005
Messages : 1 957
Points : 615
Points : 615
Par défaut [array] Comment remplacer les valeurs d'un tableau

Bonjiour à tous,

Je me prend le chou pour un truc qui parait pas bien compliqué et là, je craque, je ndemande de l'aide.

J'ai créé un class qui va extraire tous les jour ouvrable sur des dates données.

Ca fonctionen bien et maintenant j'ai créé un array qui contient mes jour ferier.
Code PHP :
1
2
3
4
5
6
7
8
9
10
11
12
13
 
	$nbOpenDays = new ExtractOpenDays($date1, $date2);
	$nbOpenDays->arr_bank_holidays = array(
		//'mois-jour' Ne pas mettre l'année
		'01-01', // Jour de l'an
		'05-01', // Fete du travail
		'07-14', // Toussaint
		'08-01', // Fete nationale
		'08-15', // Assomption
		'12-30' // Noel								   
	);
	$nbOpenDays->Calculate();
	echo $nbOpenDays->resultat;

Dans ma class, le constructeur, initialise mon "calendrier" et la fonction Calculate() lance l'analyse.

A la fin de mon script, avant d'affiché le résultat j'ai ceci qui va voir si il y a un jour ferier entre les deux date
Code PHP :
1
2
3
4
 
... code ...
}elseif(!in_array($date_array_d[0].'-'.$date_array_d[1].'-'.$date_array_d[2], $this->Jours_ferier($year))){
...code...

et voici la fonction Jours_ferier($year)
Code PHP :
1
2
3
4
5
6
7
8
9
10
 
	function Jours_ferier($year){
 
		foreach($this->arr_bank_holidays as $key => $value){
			$this->arr_bank_holidays[$key] = $year.'-'.$value;			
		}
 
//		print_r($this->arr_bank_holidays);
		return $this->arr_bank_holidays;
	}
Et c'est là dedans que j'ai le problème.

Le foreach va nalyser la variable $this->arr_bank_holiday qui ne contient que 5 caractères, soit 05-01, pour le premier mai, par exemple.

J'aimerais que mon forach ajoute l'année comme ceci
2011-05-01

C'est aussi simple que ca, et je n'arrive qu'a concaténer les années, un truc du genre
2011-2011-2011-05-01, au final.

Aussi, si je veux connaitre les jours ouvrable entre 3 année,
j'aimerais avoir ceci
2011-05-01
(autres jours feriers de l'année 2011)
2012-05-01
(autres jours feriers de l'année 2012)
2013-05-01
(autres jours feriers de l'annle 2013)
etc

Comment puis-je ajouter proprement les années a mes donnés?

Milles mercis pour vos lumières
__________________
Il ne suffit pas de tout savoir. Vouloir et persévérer, c'est déjà presque tout!
pierrot10 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/07/2011, 19h11   #2
Débutant
 
Inscription : mai 2005
Messages : 1 957
Détails du profil
Informations personnelles :
Localisation : Suisse

Informations forums :
Inscription : mai 2005
Messages : 1 957
Points : 615
Points : 615
Chais pas pourquoi je veux toujours faire compliqué

J'ai résolu le problème comme ceci

Code :
1
2
3
4
5
6
7
8
9
10
 
	function Jours_ferier($year){
 
		foreach($this->arr_bank_holidays as $key => $value){
			$arr_bank_holiday[$key] = $year.'-'.$value;			
		}
 
//		print_r($arr_bank_holiday);
		return $arr_bank_holiday;
	}
__________________
Il ne suffit pas de tout savoir. Vouloir et persévérer, c'est déjà presque tout!
pierrot10 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/07/2011, 19h14   #3
Modérateur
 
Inscription : septembre 2010
Messages : 7 103
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 103
Points : 8 456
Points : 8 456
oublie pas que pour les jours fériés, tout les autres ont un rapport avec pâques que tu peux récupérer avec easter_date
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h20.


 
 
 
 
Partenaires

Hébergement Web