Article View: pl.comp.lang.php
Article #219919Re: !isset - zbędna negacja?
From: hazet
Date: Thu, 30 Jul 2009 13:23
Date: Thu, 30 Jul 2009 13:23
72 lines
3120 bytes
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-mailReferences:
<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