Some of posts from this blog has been moved to dywicki.pl. You will be automatically redirected to new blog if you would submit comment.
New posts are published on dywicki.pl, this blog contains old content and it is not continued.

Niektóre posty z tego bloga zostały przeniesione do dywicki.pl. Zostaniesz automatycznie przekierowany jeśli bedzięsz chciał dodać komentarz.
Nowe posty sa publikowane na dywicki.pl, ten blog zawiera stare treści i nie jest kontynuowany.

Pobieranie różnych wartości z tablicy bez pętli

Filed under Wiadomości by

Zwykle, kiedy potrzebujemy zmienną ilość wartości, które są w tablicy używamy pętli. Da się jednak obejść. Dzisiejszego dnia trafiłem na zadanie, które polegało na pobraniu fragmentu tablicy. Tablica była wierszem z bazy danych, który był wynikiem złączenia kilku tabel a ja chciałem pobrać wartości tylko dla określonej tabeli. Informacje o tym, jakie klucze mnie interesują miałem zapisane w obiektach metadanych, potrzebowałem tylko odpowiednio okroić wiersz do potrzebnych mi rozmiarów.

Problem rozwiązałem przy użyciu 4 funkcji, w tym 3 funkcji wbudowanych w PHP. Potrzebne były array_uintersect_uassoc, array_flip, strcasecmp. Dodatkowo musiałem zdefiniować 1 funkcje, która dla 2 argumentów zawsze zwraca zero. Musi ona być zgodna z wymaganiami stawianymi przez “comparatory”. Zero musi być zwracane by nie porównywać wartości (wg porównywaczy zero oznacza, że obie wartości są sobie równe).

Linia, która pobiera określone klucze:

< ?php
array_uintersect_uassoc($bigArray, array_flip($keysArray), 'alwaysReturnZero', 'strcasecmp');
?>

No responses yet

Leave a Reply

You must be logged in to post a comment.