Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] problem ze sprintf
Forum PHP.pl > Forum > Przedszkole
zdzichu
Witajcie. Mam zamiar zrobić tekst, w którym można w dowolnym miejscu "wpleść" watrtości pewnych zmiennych- np. %title% -tytuł, %link% -link itp - trzeba to robić str_replacem? regexp wogóle odpada, za wolne. Natomiast zainteresowałem się sprintf(), jednak raczej nie wiem jak połączyć moją wizję jak to ma działać z możliwościami funkcji sprintf().
1. czy w dobrym kierunku idę (dobrą funkcję wybieram i czy za jej pomocą mogę uzyskać mój efekt)
2. jakiś pomocniczy kawałek kodu bym prosił, choć jeśli uzyskam odp. na 1 pytanie to nie będzie on aż tak niezbędny(chyba:P)
venomz
Mozez tak:

  1. <?php
  2. $tytul = 't1';
  3. $link = 'l1';
  4.  
  5. echo sprintf("tytul: %s, link: %s", $tytul, $link);
  6. ?>
zdzichu
a gdy będę chciał na odwrót podać wtedy będę musiał modyfikować kod? niee, to nie przejdzie smile.gif
venomz
Nie wiem dokladnie o co Ci chodzi. Podaj wiecej szczegolow.

Jezeli chodzi o funkcje sprintf to mozna jej uzywac na wiele roznych sposobow. Najpierw podajesz format, czyli np %s - string, %d - integer a pozniej uzupelniasz wartosciami/zmiennymi, np. 'napis', $liczba.

Jezeli chcesz do tekstu wrzucic jakas zmienna to mozesz to wykorzystac chociaz nie rozumiem dlaczego po prostu nie uzyjesz echo? blink.gif
zdzichu
mam zamiar zrobić coś takiego. tworzę predefiniowane zmienne- np: %title% = "Tytuł Mojej strony" %link% ="http://twoja-strona.pl" %data%- "24-12-05". Następnie jest sobie tekst, w którym wstawiam coś takiego:
Cytat
Witamy na stronie %title%!
Zostałeś zarejestrowany dnia %data%.
Zapraszamy- %link%

jednak nie chcę, aby taka kolejność była obowiazakowa, czyli np. abym mógł zrobić również taki tekst:
Cytat
<span style="text-align:right;">%data% </span><br />
Witamy na %link% , zostałeś pomyślnie zarejestwoanya (...)
Z poważaniem, Ekipa %title%

mam nadzieje, że to rozjaśni sytuację smile.gif
venomz
eh... to dalej jest dla mnie wyjatkowo niezrozumiale... dlaczego nie mozesz po prostu wykorzystac zmiennych php?
to najprostsze i najbardziej oczywiste rozwiazanie:

  1. <?php
  2. $title = "Tytuł";
  3. $data = "4.11.2006";
  4. $link = "www.strona.pl";
  5.  
  6. echo "Witamy na stronie $title<br>";
  7. echo "Zostałeś zarejestrowany dnia $data.<br>";
  8. echo "Zapraszamy- $link<br>";
  9. ?>


i dostajesz cos takiego:

Cytat
Witamy na stronie Tytuł!
Zostałeś zarejestrowany dnia 4.11.2006.
Zapraszamy- www.strona.pl
zdzichu
ponieważ to ma być ustawiane w panelu admina przez osoby które delikatnie mówiąc nie są mistrzami php.
phpion
A czy trzeba byc mistrzem zeby zamiast $tytul wpisywac %tytul%? Jak dla mnie przerost formy nad trescia...
zdzichu
ehh... panowie kombinujecie, odchodząc od meritum·
poradziłem sobie ze str_replacem.
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.