Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: define()
Forum PHP.pl > Forum > Przedszkole
mumiak
Jaka jest różnica pomiedzy define() a przechowywaniem danej w zwyklej zmiennej, i do czego w zasadzie sie stosuje define()?
FiDO
define " title="Zobacz w manualu php" target="_manualsluzy do definiowania stalych, a nie zmiennych, wiec to nie sa rzeczy wymienne. Stalych uzywa sie do definiowania wartosci, ktore nie beda ulegaly zmianom podczas wykonywania skryptu (np. sciezki).
batman
define możesz użyć do zdefiniowania parametrów połączenia do bazy danych. np
  1. <?php
  2. define(HOST,'localhost');
  3. define(USER,'nazwa');
  4. define(PASS,'haslo');
  5. define(DB,'baza');
  6. ?>

I teraz przenosząc aplikację z lokalnej maszyny na jakiś serwer zmieniasz tylko w tym miejscu HOST, USER, PASS i DB.
ActivePlayer
define w językach gdzie kod jest kompilowany raz, a potem tylko wykonywany, mysle ze ma jakis sens, a w php define mija sie troszke z celem...
ja sobie to tlumacze tak ze np. w C kompilator podczas pracy wstawia w miejsce uzycia stałej, Jej wartosc przez co nie musi odwolywac sie dodatkowo 'gdziestam' po jej wartosc...
w php to nei ma sensu bo przeciez skrypt jest kompilowany w locie, i za kazdym razem trzeba podstawic, wiec identycznie jak ze zmienną...
dr_bonzo
W C #define to byla instrukcja dla preprocesora, ktory podstawial do wywolania stalych jej wartosc, nastepnie kompilator zajmowal sie kompilacja.

Cytat
a w php define mija sie troszke z celem...

Ale stale w php sa dostepne super-globalnie, z kazdej funkji i klasy.
ActivePlayer
tzn stała to inaczej taka super-globalna ?smile.gif nie wydaje Ci sie ze tu cos nie tak jest ? przeciez z przeznaczenia stałe są do zupełnie innych celów...
NuLL
Moze i tak ale ja wlasnie wykorzstuje stale jako zmienne superglobalne tongue.gif
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.