Trier un tableau avec array_multisort

Eléphanteau du PHP | 11 Messages

17 avr. 2010, 16:03

Bonsoir,
Voila je débute en php et pensais avoir poster mon sujet avant celui de comparer 2 lignes mais je constate qu'il n'en est rien. Mille excuses.
Aussi je réitère ma demande. Je souhaite trier 2 tableaux avec la fonction array_multisort. Cela fonctionne mais j'ai un warning qui s'affiche. Pourtant mes tableaux sont de même taille.
Warning: array_multisort() [function.array-multisort]: Argument #2 is expected to be an array or a sort flag in C:\wamp\www\ExoDates2\fonctionForEach.php  on line 37
Le code est le suivant :
 $debutCours = array();
	 $debutCours[0]=mktime(14,0,0,04,12,2010);
     $debutCours[1]=mktime(16,0,0,04,13,2010);
     $debutCours[2]=mktime(14,0,0,04,14,2010);
     $debutCours[3]=mktime(15,0,0,04,14,2010);
     $debutCours[4]=mktime(14,0,0,04,15,2010);
     $debutCours[5]=mktime(16,0,0,04,15,2010);
     $debutCours[6]=mktime(8,0,0,04,16,2010);
     $debutCours[7]=mktime(9,0,0,04,16,2010);
     $debutCours[8]=mktime(14,0,0,04,16,2010);
	 
//    foreach( $debutCours as $value ) // on parcourt $array, la valeur de l'item courant est copiée dans $value
//     echo $value . '<br />'; // affichage 
   
   $finCours = array();
   $finCours[0]=mktime(16,0,0,04,12,2010);
   $finCours[1]=mktime(18,0,0,04,13,2010);
   $finCours[2]=mktime(16,0,0,04,14,2010);
   $finCours[3]=mktime(17,0,0,04,14,2010);
   $finCours[4]=mktime(16,0,0,04,15,2010);
   $finCours[5]=mktime(18,0,0,04,15,2010);
   $finCours[6]=mktime(12,0,0,04,16,2010);
   $finCours[7]=mktime(11,0,0,04,16,2010);
   $finCours[8]=mktime(16,0,0,04,16,2010);
   
   
   array_multisort($debutCours, $fincours);
   
 
Si quelqu'un peut m'apporter son aide je l'en remercie vivement

ViPHP
ViPHP | 1996 Messages

18 avr. 2010, 09:43

Petite erreur de CASSE :
array_multisort($debutCours, $finCours);
Moi pour éviter ces erreurs j'écris que en minuscule et les espaces je les remplace par _ ce qui donnerai : $fin_cours.
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr

devlop78
Invité n'ayant pas de compte PHPfrance

18 avr. 2010, 18:21

Oui erreur de Casse.

Par ... norme, si je ne me trompe pas, on écrit le premier mot en minuscule et les suivant en minuscule avec la première lettre en majuscule. Ainsi, Javascript a alert(), getElementById(), etc ...

class maClasse {

function sendMeAnAngel($name) {
echo 'I send to u an Angel named ' . $name;
}

}

ViPHP
ViPHP | 1996 Messages

18 avr. 2010, 19:36

Oui je suis d'accord, c'est bon pour Javascript...
Moi je préfère faire des noms de variables différents en Javascript et PHP. Cela me permet quand je génère des fichiers javascripts dynamiques de ne pas me tromper dans les variables et d'ainsi utiliser le même nom ($ma_variable et maVariable) pour bien différencier. Personnellement, si j'écris $maVariable et maVariable, l'identification visuelle est moins facile mais cela reste une vision personnelle...
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr

devlop78
Invité n'ayant pas de compte PHPfrance

18 avr. 2010, 19:44

Oui moi je n'ai gouté que récemment à la règle que j'avais vu sur siteduzéro. Mais j'ai apprécié

Avant je faisais, déjà du procédural, et ensuite des fonctions de type

function renvoyer_le_machin_truc()

Donc déjà niveau procédural ça devient vite dur de savoir qui fait quoi et puis voilà ... et puis maintenant j'appelle mes méthodes (donc POO) en anglais et attaché, comme function returnIfHasIt() ou getUserId(). C'est pas spécialement plus lisible mais je trouve ça plus facile à retenir ... bizarrement. Bon la Poo y est pour beaucoup. Après, chacun ses règles, le tout c'est de les respecter. Mais lorsque l'on travaille en groupe, avoir des règles normalisées est indispensable pour éviter que l'un écrive user::getinstance(), l'autre USER::GETINSTANCE() et l'autre user::getInstance() et j'en passe ...