Bonjour,

j'aimerai faire une autocomplétion lettre par lettre , en proposant les 5 lettres les plus probables en prenant en paramètre un dictionnaire d'adresse contenant une adresse par ligne (on peut ignorer les majuscules miniscules tirets et apostrophes...)
Pour le moment j'ai un parser assez simpliste...

voici mon parsing qui m'affiche déjà un petit début de quelque chose
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
$i = 0;
$word = '';
while (true) {
 
	$choices = array();
	foreach ($dico as $value){
		array_push($choices, $value[$i]);
	}
 
	arsort($choices);
	print_r(array_count_values($choices));
	$word = $word . fgets(STDIN, 128)[0];
	echo 'WORD: ' . $word . PHP_EOL;
 
 
	$newDico = array();
	foreach ($dico as $value){
		/*
		echo 'Value: ' . $value;
		echo 'Word: ' . $word;
		echo 'WordLen: ' . strlen($word);
		*/
		if (substr_compare(strtolower($value), strtolower($word), 0, strlen($word)) == 0) {
			// echo 'YES: ' . $value;
			array_push($newDico, $value);
		}
	}
	echo PHP_EOL . "newDico: ";
	print_r($newDico);
	$dico = $newDico;
	echo PHP_EOL . PHP_EOL;
	$i += 1;
}
je stock le dictionnaire dans un array.
j'aimerai vraiment améliorer mon parsing mais je suis encore débutant en php, si on pouvait m'aider.

Merci !