Probleme valeur de retour fonction php

Résolu
dharth Messages postés 140 Date d'inscription   Statut Membre Dernière intervention   -  
dharth Messages postés 140 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je suis en train de faire une fonction de tri de tableau en fonction d'une chaine. Ma fonction marche tres bien, cependant impossible de recuperer le tableau dans la fonction qui apelle celle de tri.

- a la fin de ma fonction de tri j'ai bien un return($res);

- Si j'affiche ce tableau juste avant de le retourner aucun soucis

- si je l'affiche dans la fonction appelante il m'affiche rien.

je poste le code:

function main($tab)
{
 $res = sort_by_name($tab);

print_r($res);
}

function sort_by_name($tab)
{
	$c		=	(int)0;
	$res	        =	array();
	$change   =	(int)0;
	
	while ($tab[$c] != NULL)
	{
		if ($tab[$c+1] == NULL)
		{
			$res[$c] = $tab[$c];
			$c++;
			break;
		}
		if (cmp_word($tab[$c], $tab[$c+1]) != 0)
		{
			$res[$c] = $tab[$c+1];
			$res[$c+1] = $tab[$c];
			$change = 1;
		}
		else
		{
			$res[$c] = $tab[$c];
			$res[$c+1] = $tab[$c+1];
		}
		$c += 2;
	}
	$res[$c] = NULL;
	if ($change == 1)
		sort_by_name($res);
	else
		return ($res);
}
A voir également:

2 réponses

dharth Messages postés 140 Date d'inscription   Statut Membre Dernière intervention   13
 
c'est peut être a cause de la récursion ?
0
dharth Messages postés 140 Date d'inscription   Statut Membre Dernière intervention   13
 
le probleme est regle, il suffisait juste que je fasse un
return(sort_by_name($res));

au lieu de l'appel simple de la fonction
sort_by_name($res);
0