Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Mieszarka tekstu
Forum PHP.pl > Forum > Przedszkole
Maluch
Witam wszystkich Forumowiczów,

Od jakiegoś czasu raczkuję w PHP i ostatnio w ramach kolejnego ćwiczenia myślę nad napisaniem skryptu, który będzie mieszał mi tekst, ale nie bardzo wiem od której strony mam ugryźć problem.

W zmiennej mam:
$tekst_oryginalny = "Ale ma {kota|psa|ose|świnke}"

Chciałbym wylosować jeden z wyrazów (kota/psa/ose/świnke), tak aby otrzymać różne zdania.

Możecie podpowiedzieć jak się do tego zabrać?

Z góry dzięki
Maluch
sadistic_son
Użyj sobie funkcji losującej dowolną ilość elementów tablicy - array_rand.
  1. $string='Ala ma ';
  2. $tab=array([0] => 'kota' , [1]=>'psa' , [2]=> 'pryszcze' , [3]=> 'dauna' );
  3.  
  4. $wylosowany=array_rand($tab,1);
  5. $zdanie=$string.$tab[$wylosowany];
  6.  
  7. echo "$zdanie.";
Daiquiri
Sposobów jest mnóstwo. Możesz rozbić zdanie na tablicę - używając np. explode, a potem wylosować którąś funkcją typu rand index tablicy smile.gif.

Pytanie czy losowane elementy mogą się powielić?
Pawel_W
zapewne chodzi o mieszarkę synonimów, proponuję tu zastosowanie preg_replace + funkcja, która zwróci jako zamiennik losowy element smile.gif

jeżeli chcesz skorzystać z możliwości zagnieżdżania np. Ala ma {wielkiego {tygrysa|psa}|małego {chomika|kota}} to preg_replace + rekurencja, w przykładach w manualu masz nawet gotowca smile.gif
Mikolaj.on
Gdzie w manualu ? bo nie widzę
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.