Transformer un mot en tableau

Mammouth du PHP | 1029 Messages

26 oct. 2006, 11:30

bonjour,


Je vousdrais transformer un mot en tableau.
que

$mot ='bonjour';

devienne

Code : Tout sélectionner

Array ( [0] => b [1] => o [2] => n [3] => j [4] => o [5] => u [6] => r )
Merci
L'expérience est la somme de toutes nos erreurs.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

26 oct. 2006, 11:32

Dans un sens s'en est déjà un ;)
$mot ='bonjour';

echo $mot{0}; // affiche "b"
echo $mot{1}; // affiche "o"
echo $mot{3}; // affiche "j"
...
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Mammouth du PHP | 1029 Messages

26 oct. 2006, 11:44

Oui, je sais.

Mais j'ai besoin d'un tableau, car je voudrais offrir à mes utilisateurs le mot mélangé.

Et à part en faire un tableau, pour pouvoir le mélangé je ne vois pas trop.

je pensais faire un
$nombre = strlen($mot)//7
//transformer ce nombre en tableau (0,1,2,3,4,5,6)
//le mélanger, puis

foreach($nombre as $k)
{
   echo $mot[$k]
}



je ne sais pas si je suis dans le bon, pour le moment je cherche midi à quatorze heures
L'expérience est la somme de toutes nos erreurs.

ViPHP
ViPHP | 3607 Messages

26 oct. 2006, 11:55

ton code ne marchera pas, car l'instruction foreach s'utilise avec un tableau existant, or $nombre n'est qu'un entier...
je te proposerai plutôt quelque chose comme ça:
for($i=0; $i<strlen($mot);$i++){
  $tab[$i]=$mot{$i};
}

Mammouth du PHP | 1029 Messages

26 oct. 2006, 12:02

Je savais bien que je me compliquais la vie .

Merci c'est exactement ce dont j'avais besoin. :lol:

Voila la fonction complète
<?php
function melangeMot($mot)
{
	for($i=0; $i<strlen($mot);$i++)
	{
		$tab[$i]=$mot{$i};
	}
	
	shuffle($tab);
	
	foreach ($tab as $k =>$v)
	{
		echo $tab[$k];
	}	
	
}
?>

L'expérience est la somme de toutes nos erreurs.