Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Funkcja define();
Forum PHP.pl > Forum > Przedszkole
Malinaa
Witam, znalazłem taki kod:
define('TEXT_DISPLAY', 'Wyświetlanie od <b>%d</b> do <b>%d</b> (z <b>%s</b> pozycji)');
który wyświetla numer strony w miejscu %d.

Proszę napisać różnicę między %d i %s jeśli jest ?

Jak zrobić, aby dla:
$email = 'mail-at-mail.pl';
define('EMAIL','Twój email to %d');

print EMAIL; // -> Wyświetlało Twój email to mail-at-mail.pl questionmark.gif
nospor
wszystko masz tu
http://pl.php.net/manual/en/function.sprintf.php
Skie
Nie wystarczy tak?

  1. <?php
  2. define('EMAIL', 'Twój email to '.$email);
  3. ?>
Malinaa
Skie do tego co próbuję zrobić nie wystarczy.
Skie
Cytat(Malinaa @ 13.01.2009, 23:23:06 ) *
Skie do tego co próbuję zrobić nie wystarczy.


Nie rozumiem - przecież chciałeś by

Cytat(Malinaa)
print EMAIL; // -> Wyświetlało Twój email to mail-at-mail.pl


...No i to co podałem będzie przecież tak działać.

No chyba, że wartość $email masz przypisywaną później, wtedy więc:

  1. <?php
  2. define('EMAIL', 'Twój email to %s');
  3.  
  4. $email = 'moj-email@adres.pl';
  5.  
  6. printf(EMAIL, $email);
  7. ?>


powinno też działać
sowiq
@Skie,
ludzie mają różne potrzeby. Autor zadał konkretne pytanie - po co miał opisywać Ci połowę swojej metody/funkcji, żeby Cię przekonać, że jednak Twój sposób nie wystarczy?

Najprostszy przykład - wielojęzyczny serwis.
Skie
Cytat(sowiq @ 13.01.2009, 23:31:42 ) *
@Skie,
ludzie mają różne potrzeby. Autor zadał konkretne pytanie - po co miał opisywać Ci połowę swojej metody/funkcji, żeby Cię przekonać, że jednak Twój sposób nie wystarczy?

Najprostszy przykład - wielojęzyczny serwis.


Zadał konkretne pytanie jak z print EMAIL i $email miał w przykładzie wcześniej niż define(). Jeżeli jednak chce $email "tworzyć" później to już edytowałem poprzedni post i powinna wystarczyć druga wersja.
sowiq
@Skie,
nospor napisał to już w drugim poście, więc niepotrzebnie zacząłeś dyskusję.

Pozdrawiam.
Malinaa
Skie, printf działa, ale potrzebne jest mi coś innego

Mamy:
define('T_EMAIL', 'Wysłano email na Twój adres %s podany przy rejestracji.');
$email = [email=""]'moj-email@adres.pl'[/email]; // $email jest zmienne (z formularza)

// dalej w kodzie pisze
$tabela_komunikat = tabela_komunikat_color(T_ZAREJESTROWANO, T_EMAIL);

Pytanie jak dla funkcji
tabela_komunikat_color(T_ZAREJESTROWANO, T_EMAIL);
wstawić T_EMAIL = 'Wysłano email na Twój adres moj-email@adres.pl podany przy rejestracji.';

echo $tabela_komunikat;

Może jak doczytam link nospor'a będę wiedział questionmark.gif
Dzięki za pomoc
sowiq
Cytat(Malinaa @ 13.01.2009, 23:57:19 ) *
Może jak doczytam link nospor'a będę wiedział questionmark.gif
Jakbyś przeczytał PRZED zadaniem pytania, to byś wiedział.
A odpowiedź jest bardzo prosta: string sprintf ( string $format [, mixed $args [, mixed $... ]] ). Funkcja zwraca przetworzony (sparsowany) string.
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.