![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 139 Pomógł: 11 Dołączył: 31.01.2005 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Po zmianie krasnala na "własny" serwer zacząłem się bawić w php.ini itd. Po zmianie raportowania errorów na E_ALL zaczął mi się pojawiać znany pewnie Wam error: Notice: Undefined index. Wiem, że można by to "załatwić" za pomocą usunięcia raportów o Notice, ale przecież to mija się z celem (IMG:http://forum.php.pl/style_emoticons/default/worriedsmiley.gif) Można to także załatwić za pomocą isset. Jednak mam co do tego pytanie. Która z metod jest bardziej "poprawną":
czy:
Chodzi mi tutaj bardzie o to, która z metod jest częściej stosowaną i bardziej polecaną? Może nie ma to aż takiego znaczenia, ale chciałbym poznać opinię kogoś bardziej doświadczonego (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Dzięki, Pride |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 875 Pomógł: 122 Dołączył: 2.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
W zasadzie obie są takie same... częściej chyba stosowana jest ta pierwsza bo i to mniej pisania i schludniej to wygląda... nie trzeba potem szukać po różnorakich ifach... a i nawiasy klamrowe tylko dwa i raczej nie ma możliwości żeby coś przeoczyć... (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 326 Pomógł: 121 Dołączył: 23.07.2008 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Dodatkowo drugi skladnik koniunkcji nie jest sprawdzany jezeli pierwszy zwroci wartosc logiczna 'falsz' (podobnie jak z alternatywa or i wartoscia 'true'). Dlatego tez pierwszy kod nie wymaga wcale kazdorazowego sprawdzania obu warunkow i nie traci na tym wydajnosc.
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 139 Pomógł: 11 Dołączył: 31.01.2005 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
No widzicie, a ja sam z siebie myślałem, że drugi kod > pierwszy (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
"Kto pyta, nie błądzi." |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 749 Pomógł: 37 Dołączył: 3.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
a ja bym zrobił po prostu tak:
W tym przypadku ten isset jest zbędny... Edit... czytałem temat na szybko, a właściwie tylko jego drugą część... Rzeczywiście jeżeli nie będzie $_GET, a wstawimy to w if'ie to wyskoczy błąd... Sorka Ten post edytował 1010 30.07.2008, 16:57:13 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 206 Pomógł: 18 Dołączył: 6.03.2006 Skąd: Szczecin Ostrzeżenie: (0%) ![]() ![]() |
PHP sprawdza warunki wedlug kolejnosci, wiec tak jak powiedzieli poprzednicy, pierwszy kod jest lepszy. zapewne obawiales sie, ze tak jak w niektorych innych jezykach kompilator/interpreter moze dowolnie ustawiac kolejnosci i drugi warunek bedzie sprawdzony jako pierwszy, ale w PHP tego nie ma (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) .
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 14:12 |