Array Multi

Par ctrick, il y a 11 ans


Bonsoir,

j'essaie depuis bien 1h de supprimer un element d'un array.

Voici mon array:

$temp = array( 'buro => array('table', 'chaise', 'ordinateur'), 'cuisine' => array('couteau', 'four')around );

Comment je peut faire pour supprimer table ou bien chaise?

Merci d'avance :)

13 réponses

skp, il y a 11 ans

Bonjour, comme ça il me semble

unset($temp["buro"]["table"]); unset($temp["buro"]["chaise"]); //ou unset($temp["buro"]["table"], $temp["buro"]["chaise"]);
ctrick, il y a 11 ans
<?php $temp = array( 'buro' => array('table', 'chaise', 'ordinateur'), 'cuisine' => array('couteau', 'four') ); print_r($temp); unset($temp["buro"]["table"]); print_r($temp); ?>

Cela ne fonction pas :(
Mais merci de la rapidité de ta réponse !

flo3376, il y a 11 ans

hum gros doute,
vue sur php.net http://php.net/manual/fr/language.types.array.php

<?php $a = array(1 => 'one', 2 => 'two', 3 => 'three'); unset($a[2]); /* produira un tableau comme ceci $a = array(1 => 'one', 3 => 'three'); et NON un tableau comme ceci $a = array(1 => 'one', 2 =>'three'); */ $b = array_values($a); // Maintenant, $b vaut array(0 => 'one', 1 =>'three') ?>

dans ton cas

unset($temp["buro"][1]); //pour chaise unset($temp["buro"][2]); //pour table
ctrick, il y a 11 ans

Dans mon cas il y a un array dans un array. C'est la ou je bloque....

flo3376, il y a 11 ans

j'ai modifié mon message entre temps

flo3376, il y a 11 ans

et si tu veux trouver la clé (chiffre correspondant)

vue sur php.net http://php.net/manual/fr/function.array-search.php

<?php $array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red'); $key = array_search('green', $array); // $key = 2; $key = array_search('red', $array); // $key = 1; ?>

ce qui donne dans ton cas

$key_chaise = array_search('chaise',$temp["buro"]); // $key_chaise =1;
ctrick, il y a 11 ans

Je viens de voir ! Merci beaucoup déjà. Mais comment je peux faire supprimer pour supprimer explicitement un element si je connais juste son non et non sa position dans l'array?

La je dois savoir a quelle place l'élément chaise ce situe si je veux supprimer la chaise.

ctrick, il y a 11 ans

Mdr! Tu répond avant que je demande. À croire que tu lis dans mes pensées !!

flo3376, il y a 11 ans

il y a deux ans j'étais à ta place, donc je me doute des tes besoins

skp, il y a 11 ans

Je n'avais pas fait attention au indice numérique ^^

ctrick, il y a 11 ans

Ca fait vraiment plaisir d'obtenir de l'aide !
Par contre array_values($temp) ne fonction pas chez moi lorsque je supprime la chaise.

Voici ce que ca me donne lorsque je fais $temp = array_values($temp) ;

Array ( [0] => Array ( [0] => table [2] => ordinateur ) [1] => Array ( [0] => couteau [1] => four ) )
flo3376, il y a 11 ans

tu peux lire n'importe quoi avec ce qui est en dessus

echo "<pre>";vardump($temp);echo "</pre>";

et sinon envoie ton bout de code que l'on regarde ce qui catouille

ctrick, il y a 11 ans

c'est bon j'ai reussi :))

<?php $temp = array( 'buro' => array('table', 'chaise', 'ordinateur'), 'cuisine' => array('couteau', 'four') ); print_r($temp); $key = array_search('chaise',$temp["buro"]); unset($temp["buro"][$key]); print_r($temp); $temp['buro'] = array_keys($temp); print_r($temp); ?>