Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Jak wstawić wyraz co 3-4 zdania
Forum PHP.pl > Forum > Przedszkole
PawelC
Hej smile.gif
Mógłby mi ktoś powiedzieć jak wstawić jakiś wyraz co 3-4 zdania?? bo co zdanie to wiem jak, ale jak zrobić co 3?
l0ud
Ciąg zdań przerobić na tablicę poprzez explode() z pierwszym parametrem '.' Następnie zrobić prostą pętlę for, na wzór tej
  1. <?php
  2. for ($i=0, $b=count($tablica); $i<$b; $i=$i+3) {
  3. $tablica[$i] .= 'wyraz';
  4. }
  5. ?>


Dalej wiadomo, implode z '.' i masz gotowy string smile.gif
marcinlenkowski
tak samo jak co 1, z tym że tworzysz zmienną i jeśli jej reszta z dzielenia (%) wynosi 0 wtedy wstawi wyraz a jak nie to nie
PawelC
marcinlenkowski no tak tylko że przykładowo jakbym chciał co zdanie dodać wyraz, to wystarczy użyć str_replace i zamienić samą kropke na kropke z wyrazem.
ayeo
  1. <?php
  2. function putWord($matches)
  3. {
  4. static $counter;
  5.  
  6. $matches = $matches[0];
  7. $counter++;
  8.  
  9. return (!($counter%3))?$matches." wyraz ":$matches;
  10. }
  11.  
  12. $text = "To jest zdanie. I to też jest zdanie. To jest zdanie. ";
  13. $text .= "I to też jest zdanie. To jest zdanie. I to też jest zdanie. ";
  14. $text .= "To jest zdanie. I to też jest zdanie.";
  15.  
  16. $text = preg_replace_callback("#.#", "putWord", $text);
  17.  
  18. echo $text;
  19. ?>


Mam nadzieję, że o to chodziło winksmiley.jpg
PawelC
Nie do końca bo dodaje mi wyraz rozbijając inny:
Cytat
To wyraz jes wyraz t z wyraz dan wyraz ie. wyraz I wyraz to wyraz też wyraz je wyraz st wyraz zda wyraz nie wyraz . T wyraz o j wyraz est wyraz zd wyraz ani wyraz e. wyraz I t wyraz o t wyraz eż wyraz jes wyraz t z wyraz dan wyraz ie. wyraz To wyraz je wyraz st wyraz zda wyraz nie wyraz . I wyraz to wyraz te wyraz ż j wyraz est wyraz zd wyraz ani wyraz e. wyraz To wyraz jes wyraz t z wyraz dan wyraz ie. wyraz I wyraz to wyraz też wyraz je wyraz st wyraz zda wyraz nie wyraz .

A chodzi mi o taki efekt:
Cytat
zdanie pierwsze. zdanie drugie. zdanie trzecie. tutaj wyraz. zdanie czwarte. zdanie piate. zdanie szóste. tutaj wyraz

Ale idziesz dobrym tropem.
ayeo
Problemem jest wyrażenie regularne. Forum obcięło backslasha biggrin.gif Teraz musi działać biggrin.gif
PawelC
Super biggrin.gif jesteś wielki działa biggrin.gif masz u mnie plusik za pomoc winksmiley.jpg
Dzięki
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.