Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] Mieszanie, kombinacja w string
stania
post
Post #1





Grupa: Zarejestrowani
Postów: 35
Pomógł: 0
Dołączył: 20.05.2005

Ostrzeżenie: (10%)
X----


Witam,
W php jestem zielony potrzebuję coś ala mieszarkę tekstu.

Co chcę osiągnąć, mam sobie takiego stringa

  1. $cnt = "Dzisiaj {wykonasz | zrealizujesz | osiągniesz} swój cel";


Chciałbym za każdym razem w zmiennej wyjściowej dostać losową kombinację słów pomiędzy nawiasami { .. } np:
Dzisiaj wykonasz swój cel
Dzisiaj zrealizujesz swój cel
Dzisiaj osiągniesz swój cel

Proszę o pomoc

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
viking
post
Post #2





Grupa: Zarejestrowani
Postów: 6 380
Pomógł: 1116
Dołączył: 30.08.2006

Ostrzeżenie: (0%)
-----


  1. $array = ['wykonasz', 'zrealizujesz', 'osiągniesz'];
  2.  
  3. $cnt = 'Dzisiaj ' . $array[rand(0, count($array) - 1)] . ' swój cel';
  4. echo $cnt;
Go to the top of the page
+Quote Post
redeemer
post
Post #3





Grupa: Zarejestrowani
Postów: 915
Pomógł: 210
Dołączył: 8.09.2009
Skąd: Tomaszów Lubelski/Wrocław

Ostrzeżenie: (0%)
-----


  1. $string = "Dzisiaj {wykonasz | zrealizujesz | osiągniesz} swój cel";
  2.  
  3. $output = preg_replace_callback( '/{(.*?)}/', function($match) {
  4. $words = explode('|', $match[1]);
  5. return trim($words[ mt_rand(0, count($words)-1) ]);
  6. }, $string);
  7.  
  8. var_dump($output);

Go to the top of the page
+Quote Post
stania
post
Post #4





Grupa: Zarejestrowani
Postów: 35
Pomógł: 0
Dołączył: 20.05.2005

Ostrzeżenie: (10%)
X----


Dzięki bardzo, działa idealnie
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 25.08.2025 - 04:21