[PHP] Matrice

Matrice [PHP] - PHP - Programmation

Marsh Posté le 16-12-2005 à 15:44:32    

Salut tout le monde,  
 
Je ne suis pas super calé en php, et je butte actuellement sur un ptit problème:
 
J'aimerais créer une matrice indicée (par exemple en java ça donnerait int [][] matrice = new int[nombre_de_lignes][nombre_de_colonnes])
 
Seulement en php, qu'en est-il de la déclaration ? est-ce nécessaire et si oui comment déclarer ça ?
 
Autre chose, supposons que j'arrive à faire ça, j'aimerais ensuite trier ma matrice selon une clé
 
-> exemple: je dispose d'une matrice de 10 lignes sur 3 colonnes et je voudrais trier le tableau sur les clés de la colonne n°2.
 
J'ai lu que la fonction multisort() pouvait faire ça, mais il était dit également que PHP distingue les matrices de lignes et les matrices de colonnes  :??:  
 
Si quelqu'un pouvait m'éclairer sur tout ça j'apprécierais beaucoup  :hello:

Message cité 1 fois
Message édité par ANViL le 16-12-2005 à 15:44:57
Reply

Marsh Posté le 16-12-2005 à 15:44:32   

Reply

Marsh Posté le 16-12-2005 à 15:59:53    

pour faire eles choses proprement :  
 
$matrice = array();
for($i = 0 ; $i < $nbLigne ; $i++)
       $matrice[$i] = array();
 
 
de memoire ( a verfiier dans le manuel de la fonction multisort )  
multisort($matrice[2]) devrait etre bon


---------------

Reply

Marsh Posté le 16-12-2005 à 16:00:40    

En php les déclarations ça existe pas vraiment :) Y'a un typage qui n'a que le nom  :lol:  
Donc ta matrice est un tableau multidimentionnel :) Sois tu déclares un tableau et point, soit t'y vas à la cochon comme le veut le php :whistle:
 

Code :
  1. $matrice=array(); //pas obligatoire
  2. $matrice[1][1]="ma cvaleur";
  3. $matrice[1][2]="ma cvaleur";
  4. $matrice[1][3]="ma cvaleur";
  5. ou bien
  6. $matrice=array(1=> array("ma valeur","ma valeur", 5=>"ma valeur" ));
  7. ...


 

Reply

Marsh Posté le 16-12-2005 à 16:02:49    

ANViL a écrit :

...
Seulement en php, qu'en est-il de la déclaration ? est-ce nécessaire et si oui comment déclarer ça ?


Un tableau de tableau ... Mais comme php est super bien fait, attention à ne pas avoir un tableau à trou de tableau a trou genre:

Code :
  1. $a = array(
  2.        array(1,2,3),
  3.        array(1=>10, 3=>11, 4=>12),
  4.        4=>array(21,22,25)
  5.      );


 

ANViL a écrit :


Autre chose, supposons que j'arrive à faire ça, j'aimerais ensuite trier ma matrice selon une clé
-> exemple: je dispose d'une matrice de 10 lignes sur 3 colonnes et je voudrais trier le tableau sur les clés de la colonne n°2.


sort, rsrot, usort & compagnie sont tes ami(e)s
 

ANViL a écrit :


J'ai lu que la fonction multisort() pouvait faire ça, mais il était dit également que PHP distingue les matrices de lignes et les matrices de colonnes  :??:


Aaaah les fameuses matrices de lignes et matrices de colonnes ...  :whistle:
 
edit: [:grilled]


Message édité par anapajari le 16-12-2005 à 16:03:33
Reply

Marsh Posté le 16-12-2005 à 16:03:05    

leflos5 a écrit :

En php les déclarations ça existe pas vraiment :) Y'a un typage qui n'a que le nom  :lol:  
Donc ta matrice est un tableau multidimentionnel :) Sois tu déclares un tableau et point, soit t'y vas à la cochon comme le veut le php :whistle:
 

Code :
  1. $matrice=array(); //pas obligatoire
  2. $matrice[1][1]="ma cvaleur";
  3. $matrice[1][2]="ma cvaleur";
  4. $matrice[1][3]="ma cvaleur";
  5. ou bien
  6. $matrice=array(1=> array("ma valeur","ma valeur", 5=>"ma valeur" ));
  7. ...



Il ne veut pas, il accepte nuance. Le cochon dans l'histoire sera toujours le développeur  [:aloy]

Message cité 1 fois
Message édité par Berceker United le 16-12-2005 à 16:03:31
Reply

Marsh Posté le 16-12-2005 à 16:10:24    

Berceker United a écrit :

Il ne veut pas, il accepte nuance. Le cochon dans l'histoire sera toujours le développeur  [:aloy]


Même si tu veux tout déclarer correctement, tu peux pas :D Donc bon... :whistle:

Reply

Marsh Posté le 16-12-2005 à 16:14:05    

leflos5 a écrit :

Même si tu veux tout déclarer correctement, tu peux pas :D Donc bon... :whistle:


Moi pour une question de sécurité mes variables sont typées  [:ciler] mais il faut pas tout reprocher au php. Si le dev fait changer le type de la variable au cour de sa vie ben c'est qu'il y a un problème. :o

Reply

Marsh Posté le 16-12-2005 à 16:34:09    

Ok, merci à tous pour les explications, les brumes obscures qui entouraient jusque là ma vision se sont déjà bien estompées  :jap:
 
Je vais tâcher de mettre ça en pratique  :hello:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed