Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Funkcja define();
Malinaa
post 13.01.2009, 23:14:26
Post #1





Grupa: Zarejestrowani
Postów: 573
Pomógł: 6
Dołączył: 21.07.2008

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


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


--------------------
I welcome you on the Internet >>> Design by Malina
Go to the top of the page
+Quote Post
nospor
post 13.01.2009, 23:16:59
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




wszystko masz tu
http://pl.php.net/manual/en/function.sprintf.php


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Skie
post 13.01.2009, 23:17:46
Post #3





Grupa: Zarejestrowani
Postów: 555
Pomógł: 84
Dołączył: 20.02.2008
Skąd: Małopolska

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


Nie wystarczy tak?

  1. <?php
  2. define('EMAIL', 'Twój email to '.$email);
  3. ?>


--------------------
Wieloprocesowość i wielowątkowość w PHP, poznaj Kraken PHP!
Serwer HTTP i WebSocket w PHP | Promise/A+
Strona Domowa | Elradia MMORPG
FireFox: make the web better.
Go to the top of the page
+Quote Post
Malinaa
post 13.01.2009, 23:23:06
Post #4





Grupa: Zarejestrowani
Postów: 573
Pomógł: 6
Dołączył: 21.07.2008

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


Skie do tego co próbuję zrobić nie wystarczy.


--------------------
I welcome you on the Internet >>> Design by Malina
Go to the top of the page
+Quote Post
Skie
post 13.01.2009, 23:26:22
Post #5





Grupa: Zarejestrowani
Postów: 555
Pomógł: 84
Dołączył: 20.02.2008
Skąd: Małopolska

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


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ć

Ten post edytował Skie 13.01.2009, 23:32:17


--------------------
Wieloprocesowość i wielowątkowość w PHP, poznaj Kraken PHP!
Serwer HTTP i WebSocket w PHP | Promise/A+
Strona Domowa | Elradia MMORPG
FireFox: make the web better.
Go to the top of the page
+Quote Post
sowiq
post 13.01.2009, 23:31:42
Post #6





Grupa: Zarejestrowani
Postów: 1 890
Pomógł: 339
Dołączył: 14.12.2006
Skąd: Warszawa

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


@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.
Go to the top of the page
+Quote Post
Skie
post 13.01.2009, 23:33:47
Post #7





Grupa: Zarejestrowani
Postów: 555
Pomógł: 84
Dołączył: 20.02.2008
Skąd: Małopolska

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


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.


--------------------
Wieloprocesowość i wielowątkowość w PHP, poznaj Kraken PHP!
Serwer HTTP i WebSocket w PHP | Promise/A+
Strona Domowa | Elradia MMORPG
FireFox: make the web better.
Go to the top of the page
+Quote Post
sowiq
post 13.01.2009, 23:36:24
Post #8





Grupa: Zarejestrowani
Postów: 1 890
Pomógł: 339
Dołączył: 14.12.2006
Skąd: Warszawa

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


@Skie,
nospor napisał to już w drugim poście, więc niepotrzebnie zacząłeś dyskusję.

Pozdrawiam.
Go to the top of the page
+Quote Post
Malinaa
post 13.01.2009, 23:57:19
Post #9





Grupa: Zarejestrowani
Postów: 573
Pomógł: 6
Dołączył: 21.07.2008

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


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

Ten post edytował Malinaa 13.01.2009, 23:58:54


--------------------
I welcome you on the Internet >>> Design by Malina
Go to the top of the page
+Quote Post
sowiq
post 14.01.2009, 00:36:36
Post #10





Grupa: Zarejestrowani
Postów: 1 890
Pomógł: 339
Dołączył: 14.12.2006
Skąd: Warszawa

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


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.
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 15.06.2025 - 11:03