![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 171 Pomógł: 0 Dołączył: 17.12.2003 Skąd: Krakół Ostrzeżenie: (0%) ![]() ![]() |
Witam, mam problem z funkcją switch.
Wyświetla mi wszystkie default odrazu, a nie powinno tak być. Co może być tego przyczyną ? Kod jest dostępny pod tym linkiem. switch.phps |
|
|
![]()
Post
#2
|
|
Administrator serwera Grupa: Przyjaciele php.pl Postów: 909 Pomógł: 0 Dołączył: 12.08.2003 Skąd: /var/www/wroclaw.php Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 171 Pomógł: 0 Dołączył: 17.12.2003 Skąd: Krakół Ostrzeżenie: (0%) ![]() ![]() |
dzięki, ale dlaczego uważasz, że błędem jest nie użycie w $_GET[g] cudzysłowiów ? Czy to ma jakieś większe znaczenie ? Pytam ponieważ działa mi również bez tych cudzysłowiów.
|
|
|
![]()
Post
#4
|
|
Grupa: Przyjaciele php.pl Postów: 2 712 Pomógł: 23 Dołączył: 27.10.2003 Skąd: z kontowni Ostrzeżenie: (0%) ![]() ![]() |
Błędem jest brak break po case'ach na pierwszym poziomie.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarząd Postów: 3 503 Pomógł: 28 Dołączył: 17.10.2002 Skąd: Wrocław ![]() |
Już kilaknaści erazy tłumaczyłem...
Oznacza: Wyświetl wartość tablicy $_GET o indeksie zapisanym w stałej foo. Oznacza: Wyświetl wartość tablicy $_GET o indeksie foo. Różnica jest ogromna nie uważasz? w pierwszym przypadku php zadziała tak: Sprawdzi istnienie stałej foo. Jeśłi jej nie ma, wygeneruje warning, podstawi jako jej wartość jej nazwę (wykona define( 'foo', 'foo' ); pobierze wartość z indexu. Czyli teoretycznie działa, ale... to jest błąd, niestety na razie nie słysząłem, aby to mieli zmienić. Indexy tablicy zapisujemy:
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 171 Pomógł: 0 Dołączył: 17.12.2003 Skąd: Krakół Ostrzeżenie: (0%) ![]() ![]() |
Teraz wszystko jest już jasne.
Tak uważam iż to ogromna różnica, dzięki za wytłumaczenie. A gdy używam :
To zmienne bazy też mam wywoływać w sposób $wiersz['domain'] czy nie jest to już konieczne ? Ten post edytował tomekp 17.06.2004, 10:02:06 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 131 Pomógł: 0 Dołączył: 19.08.2003 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
To też jest tablica...
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 69 Pomógł: 4 Dołączył: 12.03.2003 Skąd: Suwałki Ostrzeżenie: (0%) ![]() ![]() |
o co ci chodzi z tym bledem?
Cytat(kszychu @ 2004-06-17 09:45:13) Błędem jest brak break po case'ach na pierwszym poziomie. Cytat Po etykiecie case mogą nie występować żadne instrukcje, co oznacza po prostu, że sterowanie zostaje przekazane do następnej etykiety case.
|
|
|
![]()
Post
#9
|
|
Grupa: Przyjaciele php.pl Postów: 2 712 Pomógł: 23 Dołączył: 27.10.2003 Skąd: z kontowni Ostrzeżenie: (0%) ![]() ![]() |
Ale jeżeli występują jakieś instrukcje, jak w tym przypadku, i nie dasz break to wiesz co będzie się działo? Nie wiesz? To przeczytaj odpowiedni fragment manuala i zacytuj go tutaj.
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 69 Pomógł: 4 Dołączył: 12.03.2003 Skąd: Suwałki Ostrzeżenie: (0%) ![]() ![]() |
hehe napisales ze to jest blad a to nie blad, uwazaj wiec co piszez bo mozesz wprowadzić kogoś w blad ( ;/ ciagle ten blad;) ) ps. nie obraz sie ale ja bym to uznal za pisania dla tych numerkow pod avatarkiem (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) bo w sprawie to nic nie pomogles (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
a i nie odpisuj bo juz w ogole bedze (IMG:http://forum.php.pl/style_emoticons/default/offtopic.gif) pozdrawiam |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 131 Pomógł: 0 Dołączył: 19.08.2003 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Cytat ... php rozpoczyna wykonywanie kodu od miejsca, gdzie znajduje się ta instrukcja case. php wykonuje instrukcje aż do momentu kiedy blok switch się skończy, lub do momentu znalezienia instrukcji break. Jeśli nie napiszesz instrukcji break na końcu instrukcji w danym wyrażeniu case to php będzie wykonywać dalej instrukcje z następnego wyrażenia case. http://pl.php.net/switch EOT (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Ten post edytował Partyzant 17.06.2004, 18:17:13 |
|
|
![]()
Post
#12
|
|
Grupa: Przyjaciele php.pl Postów: 554 Pomógł: 0 Dołączył: 4.04.2002 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
php => php Początkujący
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 9.10.2025 - 14:05 |