Article View: pl.comp.lang.php
Article #232473Re: co denerwuje w PHP?
From: PawelS pawel(at)wbcd(dot)pl
Date: Tue, 13 Aug 2019 16:21
Date: Tue, 13 Aug 2019 16:21
30 lines
2811 bytes
2811 bytes
Borys Pogoreło pisze:
> Dnia Sun, 11 Aug 2019 20:23:34 +0200, PawelS pawel(at)wbcd(dot)pl
> napisał(a):
>
>> Albo powyższy przypadek kiedy lista właściwości przechowywana jest
>> w postaci ciągu znaków rozdzielonych separatorami.
>
> Checkbox - OK, dobry przykład. Ale przetwarzanie powyższego wysypie się na
> pierwszym wystąpieniu ciagu znaków '0', co jest największym problemem
> funkcji (konstruktu) empty().
>
> Poza tym nie do końca rozumiem przytoczony przykład. `explode()` zwróci
> tablicę indeksowaną numerycznie.
OK, teraz widzę, że nie dopisałem tego co istotne:
$DATA=explode('<separator-one-char>', $data);
$DATA=array_flip($DATA);
parametry teraz będą indeksami tablicy,
a pierwszy z listy parametr będzie miał wartość 0.
W ten sposób zauważyłem, że w pewnym projekcie,
ktoś łatwo zapisuje ustawienia opcji typu bool,
w sensie zaznaczony dany parametr lub nie
(które potem są zapisywane i odczytywane z bazy danych).
Teraz czy dany parametr jest włączony wystarczy sprawdzić
jego obecność poprzez wspomnianą funkcję emtpy():
if (!empty($DATA['keyword'])) { /* data funkcjonalność jest dostępna */ }
else { /* dana funkcjonalność niedostępna */ }
Tak jak napisałem przy użyciu empty() unika się ostrzeżeń,
że dany keyword nie istnieje, a jednocześnie nie trzeba
dodatkowo wywoływać isset() i potem porównywać (jest krócej).
Oczywiście powyższa funkcja ma sens w określonych przypadkach.
Technical Details
Message-ID:
<5d52e38d$0$500$65785112@news.neostrada.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!feeder.erje.net!2.eu.feeder.erje.net!feeder1.usenet.farm!feed.usenet.farm!news.uzoreto.com!newsreader4.netcologne.de!news.netcologne.de!peer01.ams1!peer.ams1.xlned.com!news.xlned.com!peer01.fr7!futter-mich.highwinds-media.com!news.highwinds-media.com!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-a-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mailReferences:
<qi47f0$1rt1m$1@portraits.wsisiz.edu.pl> <qi7dge$e8c$1@news.icm.edu.pl> <5d505d3a$0$511$65785112@news.neostrada.pl> <f7e43j0t23sx$.tecxkipeqlli.dlg@40tude.net>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!feeder.erje.net!2.eu.feeder.erje.net!feeder1.usenet.farm!feed.usenet.farm!news.uzoreto.com!newsreader4.netcologne.de!news.netcologne.de!peer01.ams1!peer.ams1.xlned.com!news.xlned.com!peer01.fr7!futter-mich.highwinds-media.com!news.highwinds-media.com!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-a-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail Date: Tue, 13 Aug 2019 18:21:29 +0200 From: "PawelS pawel(at)wbcd(dot)pl" <fake@email.org> User-Agent: Thunderbird 2.0.0.18 (X11/20081120) MIME-Version: 1.0 Newsgroups: pl.comp.lang.php Subject: Re: co denerwuje w PHP? References: <qi47f0$1rt1m$1@portraits.wsisiz.edu.pl> <qi7dge$e8c$1@news.icm.edu.pl> <5d505d3a$0$511$65785112@news.neostrada.pl> <f7e43j0t23sx$.tecxkipeqlli.dlg@40tude.net> In-Reply-To: <f7e43j0t23sx$.tecxkipeqlli.dlg@40tude.net> Lines: 30 Message-ID: <5d52e38d$0$500$65785112@news.neostrada.pl> Organization: Telekomunikacja Polska NNTP-Posting-Host: 89.231.96.70 X-Trace: 1565713293 unt-rea-b-01.news.neostrada.pl 500 89.231.96.70:53492 X-Complaints-To: abuse@news.neostrada.pl X-Received-Bytes: 2582 X-Received-Body-CRC: 2217105192 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit