Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1764 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Effacer un tableau d'un tableau ! ,)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Effacer un tableau d'un tableau ! ,)

n°1311788
GuYzMo
Posté le 22-02-2006 à 19:51:44  profilanswer
 

Salut tlm,
 
j'ai un petit problème concernant la suppression d'un tableau ds un autre tableau
 
voici le code d'insertion deja :
 

Code :
  1. for($i=0;$i<count($objAbon->formules);$i++){ //on insère dans la session les formules deja existantes
  2.   $tab['PERIODE']=$objAbon->formules[$i]->periode;
  3.   $tab['TYPE_PERIODE']=$objAbon->formules[$i]->type_periode;
  4.   $tab['PRIX']=$objAbon->formules[$i]->prix;
  5.   array_push($_SESSION['FORMULE'],$tab);
  6. }


....
 
plus loin pour effacer un element d'un tableau j'ai essayer ceci

Code :
  1. $tab['PERIODE']=$objFormule->periode;
  2. $tab['TYPE_PERIODE']=$objFormule->type_periode;
  3. $tab['PRIX']=$objFormule->prix;
  4. if(in_array($tab,$_SESSION['FORMULE']))
  5.    unset($_SESSION['FORMULE'],$tab);


 
mais ca n'a pas l'air de fonctionner, et je m'en doutais un peu a la base.
Si qqn a une idée ?
 
Et en fait en relisant le code je me demandais pq je ne passais pas directement l'objet objFormule (ou objAbonnement->formules[$i] //tableau d'obj formule) directement
dans le tableau $_SESSION['FORMULE']
Donc comment après effacer un objet d'un tableau d'objet ?


Message édité par GuYzMo le 22-02-2006 à 19:56:00
mood
Publicité
Posté le 22-02-2006 à 19:51:44  profilanswer
 

n°1312109
omega2
Posté le 23-02-2006 à 12:26:30  profilanswer
 

Heu,  [:sh@rdar] ?
Si t'avais lu convenablement la documentation de unset ( http://fr.php.net/manual/fr/function.unset.php ), t'aurais vu que ca suprime les variable qu'on lui passe en paramettre, donc "unset($_SESSION['FORMULE'],$tab);" suprimera "$_SESSION['FORMULE']" et "$tab"
 
A savoir que si tu veux effacer un élément d'un tableau, il faut conaitre l'indice qui lui correspond.
T'as utilisé in_array, ( http://fr.php.net/manual/fr/function.in-array.php ) c'est bien, mais ca te dit juste si l'élément existe dans le tableau et ca ne te donne pas l'indice dans lequel il se trouve.
Si t'avais lu la liste des fonctions "proche" de celle ci (ligne "Voir aussi " de la page de la documentation situé généralement juste au dessus des commentaires) t'aurais vu qu'il existe un "array_search". ( http://fr.php.net/manual/fr/function.array-search.php ) En lisant la description de cette fonction tu véras que c'est ce dont tu as besoin.
 
Vu ce que t'as déjà fait, t'arriveras surement à t'en sortir tout seul à partir de là.

n°1312554
GuYzMo
Posté le 23-02-2006 à 18:41:20  profilanswer
 

je sais deja tout ca, je passe mes journées ds la doc et sur le net
 

Code :
  1. $delete=$_REQUEST['delete'];
  2. $key=array_search($delete,$_SESSION['ACTI_ID_TAB']);
  3. unset($_SESSION['ACTI_ID_TAB'][$key]);
  4. sort($_SESSION['ACTI_ID_TAB']);


 
jutilise deja ceci pour effacer une ligne d'un tableau d'id.
 
je pense avoir essayer le meme principe avec un tableau de tableau, il me semblait que ca foirait, je vais retenter l'expérience.
J'ai ecrit le code de mon premier post, en me basant sur ce code-ci que j'avais deja fait auparavant. Et mea culpa j'ai mal regardé et j'ai pris mon [key]
pour un second paramètre, j'en ai déduis que le second paramètre etait la clé réferençant la ligne à effacer. Et dans mon premier exemple j'utilisais in_array pour vérifier que l'élément se trouvait bien dans mon tableau avant d'essayer de l'effacer.
 
Cela dit merci pour ta réponse, même si je pense lire convenablement la doc et ne pas poster sur ce forum au moindre petit problème.


Message édité par GuYzMo le 23-02-2006 à 18:50:44

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Effacer un tableau d'un tableau ! ,)

 

Sujets relatifs
un exo de tableau à 1 dimantion !!!Tableau dynamique
Effacer les éléments d'un tableau associatif[Perl] Effacer éléments du tableau
[JS] effacer une case d'un tableau !![c++] effacer un tableau de pointeur
[PHP] Effacer élément d'un tableau multidimentionnelComment effacer un tableau en mémoire ?
Effacer toutes les données d'un tableau ( Array )[JavaScript] effacer un tableau ?
Plus de sujets relatifs à : Effacer un tableau d'un tableau ! ,)


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR