Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Przeszukiwanie tablicy
mefjiu
post
Post #1





Grupa: Zarejestrowani
Postów: 313
Pomógł: 5
Dołączył: 22.03.2005

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


posiadam tablice która wygląda tak:
  1. <?php
  2. (
  3.    [0] => Array
  4.        (
  5.            [17136] => ./galleries/Testowa/test1/1600x1280/2560x1920.jpg
  6.        )
  7.  
  8.    [1] => Array
  9.        (
  10.            [17136] => ./galleries/Testowa/test1/2560x1600/2560x1920.jpg
  11.        )
  12.  
  13.    [2] => Array
  14.        (
  15.            [17137] => ./galleries/Testowa/test2/1600x1280/2560x1920.jpg
  16.        )
  17.  
  18.    [3] => Array
  19.        (
  20.            [17137] => ./galleries/Testowa/test2/2560x1600/2560x1920.jpg
  21.        )
  22.  
  23.    [4] => Array
  24.        (
  25.            [17138] => ./galleries/Testowa/test/1600x1280/2560x1920.jpg
  26.        )
  27.  
  28.    [5] => Array
  29.        (
  30.            [17138] => ./galleries/Testowa/test/2560x1600/2560x1920.jpg
  31.        )
  32.  
  33. )
  34. ?>


Potrzebuje otworzyć funkcje która będzie zwracała klucz tablicy np 17138 po podaniu wartości do przeszukania "./galleries/Testowa/test/2560x1600/2560x1920.jpg"

Kompletnie nie mogę sobie s tym poradzić.
Proszę o pomoc
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
JoShiMa
post
Post #2





Grupa: Zarejestrowani
Postów: 1 374
Pomógł: 149
Dołączył: 1.03.2006

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


Manual nie gryzie a można w nim znaleźć różne ciekawe funkcje.


--------------------
Go to the top of the page
+Quote Post
mefjiu
post
Post #3





Grupa: Zarejestrowani
Postów: 313
Pomógł: 5
Dołączył: 22.03.2005

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


Cytat(JoShiMa @ 16.09.2008, 10:21:17 ) *
Manual nie gryzie a można w nim znaleźć różne ciekawe funkcje.


Doskonale sobie zdaję z tego sprawę :-) ale nie wiem jak użyć odpowiednio funkcji array_search aby wyciągnąć dany klucz z tablicy wielowymiarowej.
Go to the top of the page
+Quote Post
JoShiMa
post
Post #4





Grupa: Zarejestrowani
Postów: 1 374
Pomógł: 149
Dołączył: 1.03.2006

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


Bo array_search nie obsłuży wielowymiarowej tablicy. Trzeba bardziej pokombinować i wykorzystać inne funkcje tablicowe.


--------------------
Go to the top of the page
+Quote Post
mefjiu
post
Post #5





Grupa: Zarejestrowani
Postów: 313
Pomógł: 5
Dołączył: 22.03.2005

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


Cytat(JoShiMa @ 16.09.2008, 10:26:09 ) *
Bo array_search nie obsłuży wielowymiarowej tablicy. Trzeba bardziej pokombinować i wykorzystać inne funkcje tablicowe.


Z tego też doskonale zdaję sobie sprawę :-) Wiec dlatego proszę kolegów oraz koleżanki bardziej doświadczonych programistów pomoc.

Ten post edytował mefjiu 16.09.2008, 11:31:56
Go to the top of the page
+Quote Post
JoShiMa
post
Post #6





Grupa: Zarejestrowani
Postów: 1 374
Pomógł: 149
Dołączył: 1.03.2006

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


No nie wiem czy mogę sie odzywać w związku z tym, bo jestem płci przeciwnej. Ponieważ tablica ma tylko dwa wymiary połączyłam bym while z array_serach. Ale ja tylko kobieta jestem tongue.gif

A może zastosowałabym array_walk() w jakiś sprytny sposób ?


--------------------
Go to the top of the page
+Quote Post
mefjiu
post
Post #7





Grupa: Zarejestrowani
Postów: 313
Pomógł: 5
Dołączył: 22.03.2005

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


Ja już się pogubiłem i sam nie wiem co będzie dobre i odpowiednie :-)

ps. poprzednią wypowiedź poprawiłem tongue.gif

Rozwiązania może komuś się przyda:

  1. <?php
  2. function multiArraySearch($search_size, $array){
  3.        $value = false;
  4.        $x = 0;
  5.        foreach($array as $temp){
  6.                 $search = array_search($search_size, $temp);
  7.                 if (strlen($search) > 0 && $search >= 0){
  8.                    return $value[1] = $search;
  9.                      }
  10.                 $x++;
  11.            }
  12.    return $value;
  13.  }
  14. // wynik
  15. echo (multiArraySearch('./galleries/Testowa/test/2560x1600/2560x1920.jpg',$foo));
  16. ?>
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 Aktualny czas: 21.08.2025 - 02:42