Dakle, juniore.. funkcija define() ... služi za definisanje konstanti.
A konstante su suprotno od promenjivih.
Recimo...
ima istu svrhu kao i ...
Code (php):
$get_id = filter_input(INPUT_GET
,'id',FILTER_SANITIZE_STRING
);
# filter_input() metoda koju ja koristim je ustvari isto što i → $get_id = $_GET['id'];
# samo, malčice "čvršće i bolje" ... rekao bih. :)
... s' tim što se sa varijablom/promenjivom može uraditi i sledeće..
Code (php):
if($get_id == null || empty($get_id)) {
$get_id = 'Daaamn! I am empty!';
}
Dok je ovo ....
Code (php):
if(get_id
== null || empty(get_id
)) {
get_id
= 'Daaamn! I am empty!';
}
- Nemoguće!
Dakle, ovaj deo
Code (php):
... || empty(get_id
)) { ....
kao i ovaj deo
Code (php):
... get_id = 'Daaamn! I am empty!';
...jesu
namerno napisane greške čisto primera radi.
Provera if(empty()) jednostavno nema nikakvu logiku i svrhu.
dobićeš nešto ovako ako probaš sa if(empty( ime_konstante ))
Citat:
Parse error: syntax error, unexpected ')', expecting T_PAAMAYIM_NEKUDOTAYIM
Konstanta ne može biti bukvalno prazna, ali može imati NULL vrednost.
Konstanta se ne može menjati kasnije kao promenjiva, niti se može koristiti na isti način.
Naravno, možeš ih koristiti i pozivati kao i promenjive, s' tim što ih pišeš bez $, pišeš ih kao defiisanu reč..
Jednom definisana, definisana je za nadalje. Amin.
Code (php):
if( get_id != null ){
echo get_id;
}
Međutim, ukoliko koristiš konstantu kao u prvom code tag primeru, na recimo, samom početku dokumenta, sistema, skripte..
.. te filtrirana "get" konstanta ustvari vrši neku .. paginaciju, hvata 'id' .. onda si ti praktično dobio,
promenjivu konstantu.
Ali, do kraja skripte, to što je jednom uhvaćeno, kroz konstantu, ne može se izmeniti kontrolnom sktrukturom.
Niti definisati ponovo pod istim imenom.
Može se samo upotrebiti ili preneti vrednost određene konstante na promenjivu.
about:networking