Elever les keys vides d'un tableau [Résolu]

Signaler
Messages postés
151
Date d'inscription
samedi 1 novembre 2003
Statut
Membre
Dernière intervention
30 juillet 2018
-
Messages postés
151
Date d'inscription
samedi 1 novembre 2003
Statut
Membre
Dernière intervention
30 juillet 2018
-
bonjour

je voudrais savoir s'il existe une fonction permettant d'enlever les keys vides dans un tableau
par ex, du tableau de 5 elements :
   $tab = array( 'v1', 'v2', '', '', 'v7' );
obtenir le tableau de 3 elements :
   $tab_modif = array( 'v1', 'v2', 'v7' );
vu que $tab[2]="" et que $tab[3]="" .

merci

4 réponses

Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
hello,

$tab = array_filter ($tab);
Messages postés
332
Date d'inscription
mardi 12 juillet 2005
Statut
Membre
Dernière intervention
17 juillet 2010

Je connais pas de fonction qui le ferait, je propose:
$tab = array( 'v1', 'v2', '', '', 'v7' );
for ($i = 0; $i < count($tab); $i++) {
    if ($tab[$i] == "") {
        array_splice ($tab, $i, 1);
        $i--;
    }
}

ou alors un truc genre:

function create($var) {


    global $newtab;


    if ($var != "") array_push($newtab , $var);


}
$tab = array( 'v1', 'v2', '', '', 'v7' );
$newtab = array();

array_map("create", $tab);
Messages postés
332
Date d'inscription
mardi 12 juillet 2005
Statut
Membre
Dernière intervention
17 juillet 2010

Oui mais attention cette fonction va retourné pour l'exemple donné:
Array
(
[0] => v1
[1] => v2
[4] => v7
);
(conservation des associations clef valeur)
Messages postés
151
Date d'inscription
samedi 1 novembre 2003
Statut
Membre
Dernière intervention
30 juillet 2018

mais cette fonction est exactement ce que je recherchais
merci a tous deux