Bonjour,

J'ai un tableau contenant des tableaux...
Comment faire pour supprimer un tableau du tableau global?

Voici mon code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
 
function parcours_tableau($tableau) 
{
	global $sauv_tableau,$sauv_cle,$retour;
	$test_bib_doc=0;
	$test_valid_lecteur=0;
 
	// on fait une boucle qui lit les éléments du tableau
	foreach ($tableau as $cle=>$valeur)
	{
  		// si l'un des éléments est lui même un tableau
		// alors on applique la fonction à ce tableau
		if(is_array($valeur)) 
	  	{
			$sauv_tableau=$tableau;
			$sauv_cle=$cle;
	  		// ici se réalise la récursivité
			// c'est à dire qu'on applique la fonction
			// à l'élément en cours car c'est lui aussi un tableau
			parcours_tableau($valeur);
		}
		// si ce n'est pas un tableau
		// alors on test le contenu de l'élément
  		else
	  	{
			if(($cle==="ID_bib_doc")&&($valeur==4))
		  	{
				$test_bib_doc=1;
		  	}
		    if(($cle==="valide_lecteur")&&($valeur==0))
		  	{
				$test_valid_lecteur=1;
		  	}
		}
  	}
  	if($test_bib_doc==1 && $test_valid_lecteur==1)
  	{
	  	$retour[$sauv_tableau][$sauv_cle]=array();
  	}
}
 
parcours_tableau($retour);
Voici le contenu de mon tableau $retour:
Array (
[1] => Array (
)
[2] => Array (
[0] => Array (
[ID_bib_doc] => 4
[valide_lecteur] => 0
)
[1] => Array (
[ID_bib_doc] => 4
[valide_lecteur] => 1
)
)
[3] => Array (
)
)
En gros dans l'exemple ci-dessus, je veux supprimer le tableau:
$retour[2][0]
De ce fait je souhaite obtenir le tableau suivant en sortie:
Array (
[1] => Array (
)
[2] => Array (
[1] => Array (
[ID_bib_doc] => 4
[valide_lecteur] => 1
)
)
[3] => Array (
)
)
Mon code permet bien de récupérer le tableau remplissant les deux conditions, mais je n'arrive pas à supprimer du tableau $retour le tableau concerné... Pourtant j'ai déclaré $retour en global au début de la fonction...

Une idée?

Merci d'avance pour vos réponses...