[php] define, defined
 
juresl 26. avg 2010 16:57:52 Pridružen od:
16. avg 2007
209 objav
74 23 4
#1

Pozdrav!



Zanima me, zakaj spodnja koda, v primeru, da je IN_PHP definiran kot false vrne 1 in v primeru da je true tudi 1. Nebi moglo za false vrnit 0?



site.php


define('IN_PHP', false); // true, false
require_once('common.php');

common.php:


echo defined('IN_PHP');
všeč(0) ni všeč(0) spam(0)
 
blackmamba 26. avg 2010 17:05:11 Pridružen od:
4. mar 2008
559 objav
392 25 11
#2

ker je konstanta definirana in ima vrednost false


všeč(1) ni všeč(0) spam(0)
 
juresl 26. avg 2010 17:16:24 Pridružen od:
16. avg 2007
209 objav
74 23 4
#3

Torej samo v primeru da ni definirana bi vrnilo 0.. hvala!


všeč(0) ni všeč(0) spam(0)
 
bostjan 26. avg 2010 19:03:44 Pridružen od:
31. jul 2008
643 objav
689 30 9
#4

heh :D zakaj le




  1. ti definiraš konstanto

  2. ti pokličeš funkcijo defined, kar pomeni ali je konstanta definirana

  3. ta funkcija ne gleda vrednost konstante temveč samo ali konstanta obstaja ali ne



torej ker konstanta IN_PHP obstaja (pa je čisto vseeno ali je true ali false) vrne vedno true oziroma 1


všeč(2) ni všeč(0) spam(0)
 
juresl 26. avg 2010 19:20:36 Pridružen od:
16. avg 2007
209 objav
74 23 4
#5

Joj.. zdaj sem komaj skapiral kaj sem jaz razmišljal:

INPHP = defined('INPHP')



Hvala za odgovore..


všeč(0) ni všeč(0) spam(0)
 
 

🔒 Za odgovor na to temo se moraš prijaviti.

Prijavi se