Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Przeszukiwanie tablicy wielowymiarowej
bylsobiektos
post 5.02.2017, 12:38:16
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 11.01.2017

Ostrzeżenie: (0%)
-----


Witam. Wiem, że temat był już przerabiany wielokrotnie. Ale przedstawione przykłady w postach na tym forum nie mogę dostosować do moich potrzeb.
Mam taką tablicę:
  1. Array ( [0] => Array ( [nazwa] => nazwa [typ] => typ [poziom] => poziom )

Próbowałem napisać funkcję która w razie znalezienia wartości 'nazwa' zwróci
  1. <input type="checkbox" disabled>

, a jak nie znajdzie wartości to
  1. <input type="checkbox">

Co może być wyświetlone później w echo.
Go to the top of the page
+Quote Post
Snake
post 5.02.2017, 13:39:45
Post #2





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 5.02.2014

Ostrzeżenie: (0%)
-----


Pokaż tą 'próbę' funkcji.
Go to the top of the page
+Quote Post
bylsobiektos
post 5.02.2017, 14:59:08
Post #3





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 11.01.2017

Ostrzeżenie: (0%)
-----


Ok udało mi się to ogarnąć. Może nie jest to zbyt eleganckie rozwiązanie,ale działa.
  1. $this->kolumny = array_column($this->array, 'nazwa');
  2. $this->wynik= array_search(szukana_wartosc,$this->kolumny);
  3. if ($this->wynik == FALSE)
  4. {echo 'nie';}
  5. else {
  6. echo 'tak';
  7. }

Temat do zamknięcia
Go to the top of the page
+Quote Post
nospor
post 5.02.2017, 15:05:31
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




nie: == false
a: === false

array_search zwraca klucz tablicy. Gdy klucz bedzie poprostu 0 to wowczas masz
0 == false so jest prawda i napiszesz ze nie znalazl, mimo ze znalazl.
=== sprawdza rownie typy wiec
0 === false bedzie falszem


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
bylsobiektos
post 5.02.2017, 15:06:40
Post #5





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 11.01.2017

Ostrzeżenie: (0%)
-----


no fajnie,ale to dlaczego u mnie mój przykład działa?
Go to the top of the page
+Quote Post
nospor
post 5.02.2017, 15:10:20
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




zastanowiles sie nad tym co napisalem? Napisalem wyraznie, ze nie zadziala, gdy wartosc ktorej szukasz bedzie sie znajdowac pod indexem 0. W kazdym innym przypadku zadziala prawidlowo


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
bylsobiektos
post 5.02.2017, 17:05:06
Post #7





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 11.01.2017

Ostrzeżenie: (0%)
-----


Ok,juz kumam. Dzięki za pomoc
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 05:21