J'essaie d'utiliser les données sauvegardées sur liste.txt via le formulaire Soumettre et d'l'afficher au hasard à la page.
index.php p> list.txt < / p>
3 Réponses :
Vous devez convertir la chaîne en une matrice en utilisant exploser () code>, puis pour ajouter des éléments supplémentaires si nécessaire:
$list = fread($myfile,filesize('list.txt'));
fclose($myfile);
$bg0 = explode(', ',str_replace("'","",$list));
$bg0[] = 'yellow';
$i = rand(0, count($bg0)-1); // generate random number size of the array
$selectedColor = "$bg0[$i]"; // set variable equal to which random color was chosen
echo $selectedColor;
Je ne suis pas totalement sûr de ce que vous essayez d'atteindre ici, mais vous avez peu de problèmes:
1) SelectedColor P>
devrait être $ Selecteylcolor p>
2) Chargement de Le "tableau". p>
Vous ne pouvez pas simplement charger un texte et vous attendre à PHP de deviner le format. Si vous souhaitez charger le fichier et le traiter comme une matrice, vous devez instruire php à le faire. P>
Dans votre exemple, vous pouvez par exemple diviser le texte et couper les caractères non désirés: P>
<?php //$list = file_get_contents('list.txt'); //Tested without fopen $myfile = fopen('list.txt', "r") or die (""); $list = fread($myfile,filesize('list.txt')); $list = explode(',', $list); array_walk($list, function(&$elem) { $elem = trim($elem, ' \''); }); $bg0 = array_merge($list , ['yellow']); // array of colors fclose($myfile); $i = rand(0, count($bg0)-1); // generate random number size of the array $selectedColor = $bg0[$i]; // set variable equal to which random color was chosen echo $selectedColor; ?>
Quel est votre problème?
Vous devez faire en sorte que $ liste un réseau réel en fractionnant les valeurs.
Pas clair ce que vous essayez de demander
Ne marche pas. Je comprends le concept. Mais pour une raison quelconque lorsque j'ai lu la liste à l'aide de fichiers_get_contents ou de fopen, cela ne fonctionne pas.
Chemin vers le fichier est valide? Vérifier
$ myfile = fopen ('list.txt', "r") ou mourir ("ICI devrait être un message"); code>
Et remarquez que la chaîne de retour code> Fread code> Vous souhaitez également
exploser code> avant de la fusionner et de l'utiliser comme tableau