Rechercher : dans
Par :

Tableau associatif php

Dernière réponse le 22 avr 2008 à 11:04:47 PK974, le 18 avr 2008 à 16:11:52 
 Signaler ce message aux modérateurs

Bonjour,
nouveau dans ce forum j'espere trouver une aide ici .
mon probleme conserne les tableaux et / ou tableaux associatif en PHP.

j 'expose mon problem,
j'ai 3 tableaux de 3 tailles differentes :

soit
$tab1 = array ("cahier","stylo","feutre","lampe","ciseaux","livre" ); // liste exaustive de fourniture
$tab2 = array ("cahier" => 17 ,"lampe =>5","ciseaux => 1");
$tab3 = array ("cahier" => 10, "feutre" =>2);


j'aimerai pouvoir recuperer 3 tableaux de meme tailles comme ce qui suit:

$tab1= array ("cahier","stylo","feutre","lampe","ciseaux","livre" ); // reste inchangé
$tab2= array ("cahier" => 17 ,"lampe =>5","ciseaux => 1","stylo" =>0,"feutre"=>0);
$tab3= array ("cahier" =>10, "feutre" =>2, "stylo"=>0, "lampe"=>0, "ciseaux"=>0, "livre",=>0);

je m 'explique,
$tab1 reste inchangé c le meme .
$tab2 contient les anciens couple cle /valeurs a cela s'ajoute les clés de $tab1 qui n'y était pas dans $tab2 avec pour valeur 0;

de meme pour $tab3 il contient ses anciens cle /valeurs auquel s'ajoute les clés de $tab1 qui n'y était pas dans $tab3 avec pour valeur 0;

y aurait il un fonction PHP qui ferait cela ?
je suis perdu avec mes boucles foreach ...

je vous en remercie par avance !

PK974

Configuration: Linux
Firefox 2.0.0.12

Meilleures réponses pour « tableau associatif php » dans :
PHP - Les variables VoirConcept de variable avec PHP Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. Les variables en langage PHP peuvent être de trois...
Javascript - Les tableaux VoirIntroduction à la notion de tableau Les variables de Javascript ne permettent de stocker qu'une seule donnée à la fois. Or, étant donné qu'il est souvent utile de manipuler de nombreuses données, le concept de variable se révéle parfois...

1

R4f, le 18 avr 2008 à 17:18:45
  • +2

Bon, il faut 2 fonctions : array_fill_keys et array_merge.


<pre><?php

$tab1 = array ('cahier','stylo','feutre','lampe','ciseaux','livre' ); // liste exaustive de fourniture
$tab2 = array ('cahier' => 17 ,'lampe' =>5,'ciseaux' => 1);
$tab3 = array ('cahier' => 10, 'feutre' =>2);

echo "\$tab1 : \n";
print_r($tab1);

echo "\$tab_tmp : \n";
$tab_tmp = array_fill_keys($tab1, 0);
print_r($tab_tmp);

echo "\$tab2 : \n";
$tab2 = array_merge($tab_tmp, $tab2);
print_r($tab2);

echo "\$tab3 : \n";
$tab3 = array_merge($tab_tmp, $tab3);
print_r($tab3);

?></pre>



Raph

Répondre à R4f

2

PK974, le 18 avr 2008 à 17:43:32

Merci bcp Raph !!!
c'etait exactement ce que je voulais faire !!

mais je connaissait pas l 'existance de ces fonctions .....

thanks :-))
pk

Répondre à PK974

3

PK974, le 22 avr 2008 à 10:19:49

Bonjour,
j'aurais une autre question !

sauriez vous s 'il existe un fonction en PHP qui renplacerai les cles d'un tableau associatif , par des valeur numerique!

exemple :
$tab2 = array ('cahier' => 17 ,'lampe' =>5,'ciseaux' => 1);
deviendrai

$tab2 = array ('0' => 17 ,'1' =>5,'2' => 1);

ou mieux encore :

$tab2 = array ( 17 ,5, 1);

Merci

Répondre à PK974

4

R4f, le 22 avr 2008 à 10:52:15
  • +3

<?php

$tab2 = array ('cahier' => 17 ,'lampe' =>5,'ciseaux' => 1);
echo "Associatif : \n";
var_dump($tab2);

$tab2 = array_values($tab2);
echo "Converti : \n";
var_dump($tab2);

$tab2 = array ('0' => 17 ,'1' =>5,'2' => 1);
echo "Correction1 : \n";
var_dump($tab2);

$tab2 = array ( 17 ,5, 1);
echo "Correction2 : \n";
var_dump($tab2);

?>


En fait, il ne s'agit pas de remplacer mais d'extraire uniquement les valeurs d'un tableau associatif, sous forme de tableau simple.


Raph Pour être aidé le plus rapidement possible : donner un sujet parlant à votre message +indiquer
ce qui est en place + ce que vous avez fait + ce que ça devrait faire + ce que ça fait.

Répondre à R4f

5

 PK974, le 22 avr 2008 à 11:04:47

Merci encore Raph !

Répondre à PK974