🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.php
Article #219919

Re: !isset - zbędna negacja?

#219919
From: hazet
Date: Thu, 30 Jul 2009 13:23
72 lines
3120 bytes
Lemat pisze:
> hazet wrote:
> 
>> Jest taki kod:
>>
>> if(!isset($_GET['styl']))
>>   {
>>   require('./normalny.php');
>>   }
>>   else
>>   {
>>   require('./opcjonalny.php');
>>   }
>>
>> Jeśli zmienna styl "nie" istnieje require normalny w innym wypadku
>> opcjonalny.
>>
>> Po co ta negacja ?
>> Przecież równie dobrze można:
>>
>> if(isset($_GET['styl']))
>>   {
>> require('./opcjonalny.php');
>>   }
>>   else
>>   {
>>   require('./normalny.php');
>>   }
>>
>> Jeśli zmienna styl istnieje require opcjonalny w innym wypadku normalny.
>> Trochę mnie to zastanawia, widziałem to w wielu kodach i ta negacja
>> wydaje się być bez sensu.
> 
> a rozważyłeś kwestię czytelności kodu?
> widocznie dla programisty kwestia nie istnienia zmiennej jest bardzo ważna i 
> umieścił ją sobie wcześniej - bo miał takie widzimisię.
> 
no ok obie są poprawne, zanalizowałem to jeszcze raz.

Mam jeszcze jedno pytanie dot. funkcji require i include z tego przykładu.

po zmianie z require na include również wyświetla fatal error i 
zatrzymuje skrypt gdy załączanego pliku nie ma

INCLUDE:

"Warning: include(./normalny.php) [function.include]: failed to open 
stream: No such file or directory in C:\Program 
Files\WebServ\httpd\php\index.php on line 9

Warning: include() [function.include]: Failed opening './normalny.php' 
for inclusion (include_path='.;C:\php5\pear') in C:\Program 
Files\WebServ\httpd\php\index.php on line 9

Fatal error: Call to undefined function pokaztytul() in C:\Program 
Files\WebServ\httpd\php\index.php on line 12"


REQUIRE:

Warning: require(./normalny.php) [function.require]: failed to open 
stream: No such file or directory in C:\Program 
Files\WebServ\httpd\php\index.php on line 9

Fatal error: require() [function.require]: Failed opening required 
'./normalny.php' (include_path='.;C:\php5\pear') in C:\Program 
Files\WebServ\httpd\php\index.php on line 9


echo 'test';  w index.php po wywołaniu funkcji z pliku nie wyświetla 
się, natomiast echo przed wywołaniem funkcji wyświetla się w include. 
Tak powinno być ?
Technical Details
Message-ID: <h4s6so$7p5$1@inews.gazeta.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
References: <h4s5jk$1rf$1@inews.gazeta.pl> <h4s6bb$o1b$2@atlantis.news.neostrada.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: hazet <hazet@no-mail.pl>
Newsgroups: pl.comp.lang.php
Subject: Re: !isset - zbędna negacja?
Date: Thu, 30 Jul 2009 15:23:37 +0200
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 72
Message-ID: <h4s6so$7p5$1@inews.gazeta.pl>
References: <h4s5jk$1rf$1@inews.gazeta.pl> <h4s6bb$o1b$2@atlantis.news.neostrada.pl>
NNTP-Posting-Host: static-ip-77-89-75-190.promax.media.pl
Mime-Version: 1.0
X-Trace: inews.gazeta.pl 1248960217 7973 77.89.75.190 (30 Jul 2009 13:23:37 GMT)
X-Complaints-To: usenet@agora.pl
NNTP-Posting-Date: Thu, 30 Jul 2009 13:23:37 +0000 (UTC)
X-User: vitar91
X-Antivirus: avast! (VPS 090729-1, 2009-07-29), Outbound message
In-Reply-To: <h4s6bb$o1b$2@atlantis.news.neostrada.pl>
X-Antivirus-Status: Clean
User-Agent: Thunderbird 2.0.0.22 (Windows/20090605)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit