Korzystając z tej strony zgadzasz się z polityką prywatności i regulaminem.
Akceptuj
WebInside.plWebInside.plWebInside.pl
  • Aktualności
  • Technologie
  • WWW
  • E-marketing
  • AI
  • Poradniki
  • e(Biznes)
Szukaj
  • Kontakt
  • Forum
WebInside.pl © 2023.
Czytasz: Przeglądanie tablic w PHP
Udostępnij
Zaloguj się
Powiadomienia
Aa
WebInside.plWebInside.pl
Aa
Szukaj
  • Strona główna
  • Aktualności
  • Technologie webowe
  • Publicystyka
  • E-marketing
  • Poradniki
  • AI
  • Technologie
  • Artykuły partnerskie
  • Więcej
    • Kontakt
    • Mapa strony
Masz już konto? Zaloguj się
  • Aktualności
  • Technologie
  • WWW
  • E-marketing
  • AI
  • Poradniki
  • e(Biznes)
WebInside.pl © 2023.
WebInside.pl > Technologie webowe > Przeglądanie tablic w PHP
Technologie webowe

Przeglądanie tablic w PHP

WebInside.pl
Ostatnia aktualizacja: 24.07.2003
WebInside.pl
Udostępnij
Udostępnij

Jeżeli nie wiesz jak skutecznie przeglądać każdy rodzaj tablic. Jeżeli sprawiają ci problem nie sekwencyjne tablice. Zapraszam do przeczytania artykułu, opisuję w nim jak sobie z tymi problemami poradzić.

Zawartość
list() oraz each()Pętla foreach()

PHP jako język nie kompilowany, nie posiada ścisłej kontroli typów danych. Tablice nie musza mieć z góry określonego typu, oraz wielkości. Jest to wygodne, ale sprzyja powstawaniu bałagany w tablicach i czasami nie da się ich dobrze wykorzystać. Zakładam że jako taką wiedze o tablicach posiadasz, więc nie będę dużo wyjaśniał.

W php tablice mogą być indeksowane liczbami całkowitymi (numeryczne), lub znakami (asocjacyjne). Pierwsza jest o tyle lepsza że cyfry stanowią typ porządkowy, więc można je wygodnie przeglądać przy użyciu pętli for, ale i to nic nie da jak mamy w tablicy wartości pod indeksami: 1, 17, 547 i 6759. Przebiegnięcie pętlą do indeksu o numerze 7000 da nam w rezultacie 4 wartości i 6996 wartości pustych. Możemy na takiej tablicy użyć funkcji count(), ale da ona w wyniku 4 i za wiele nam nie pomoże. W przypadku tablicy asocjacyjnej wogóle za wiele nie zadziałamy bo nie możemy użyć pętli dla typu porządkowego, a możemy przecież nie znać indeksów tablicy… i co wtedy… nie ma innego wyjścia jak jedna z poniższych metod.

Są dwie wg. mnie najlepsze metody przeglądania takich tablic jakie przed chwilą przedstawiłem.
Pierwsza: Przy wykorzystaniu funkcji list() oraz each()
Druga: Przy wykorzystaniu pętli foreach()

list() oraz each()

Funkcja list() jest funkcją lewostronną (lvalue). Argumentami może być lista zmiennych lub tablica. Funkcja list analizuje podane zmienne od lewej do prawej, a następnie przypisuje im odpowiadające wartości prawostronne (rvalue). Pamiętaj, list() może występować tylko po lewej stronie, nie możesz np.: wykorzystać jej do zamiany wartości:

list( $a, $b ) = list( $b, $a );

Jest to błędem i na pewno nie zadziała. Drugą funkcja jest funkcja each() która zwraca z tablicy wartość, a następnie przesuwa jej wewnętrzny wskaźnik na następną wartość. Funkcja zwraca pary klucz wartość, uzasadnione jest więc użycie funkcji list() po lewej stronie. Połączenie funkcji list() z each() pozwala – jak już wcześniej napisałem – przypisywać wartości z tablicy zmiennym po lewej stronie. Naturalnie do przejrzenia wartości w tablicy należy użyć pętli while, gdyż nie znamy ilości iteracji jakie pętla ma wykonać. Pętla nie zwraca wartości oraz indeksów tych elementów które nie istnieją, tak więc tym sposobem zyskamy tylko istniejące elementy tablicy oraz ich indeksy. Przykładowa pętla wykorzystująca funkcje list() oraz each() wyglądałaby tak:

while( list( $index, $wartosc ) = each( $tablica ) )
{
echo $index . ” – ” . $wartosc . „<br>”;
}

Powyższy kod wypisze wszystkie indeksy i wartości z tablicy $tablica. W funkcji list() wszystkie zmienne nie są obowiązkowe, tak więc jeżeli chcemy pobrać same indeksy możemy użyć kodu:

while( list( $index ) = each( $tablica ) )
{
echo $index . „<br>”;
}

Analogicznie możemy pobrać same wartości, trzeba w tym przypadku jedna pozostawić przecinek:

while( list( , $wartosc ) = each( $tablica ) )
{
echo $wartosc . „<br>”;
}

W ten oto sposób możemy wyświetlać zawartość tablicy przy pomocy funkcji list() oraz each().

Pętla foreach()

Jest to nieco prostszy sposób, ale dostępny dopiero od wersji PHP 4. Jest to pętla która przebiega tablicę oraz zwraca jej wartości oraz opcjonalnie indeksy. W praktyce wygląda to tak:

foreach( $tablica AS $wartosc )
{
echo $wartosc . „<br>”;
}

tym sposobem wypisane zostaną wszystkie wartości z tablicy $tablica. Naturalnie puste wartości zostaną pominięte i nie będzie pustych wierszy w wyniku. Przy pomocy tej pętli możemy również wyświetlić indeksy, wygląda to tak:

foreach( $tablica AS $index => $wartosc )
{
echo $index . ” – ” . $wartosc . „<br>”;
}

powyższy kod spowoduje wypisanie wszystkich elementów tablicy $tablica wraz z jej indeksami. Należy pamiętać o znakach „=>” które są w tym wypadku konieczne. Niestety nie możliwe jest przy pomocy tej pętli wydobycie samego indeksu, zapis taki jak ten:

foreach( $tablica AS $index => )
{
echo $index . ” – ” . $wartosc . „<br>”;
}

jest błędny i nie będzie działał i nie ma sposobu aby takie coś wypaliło.

To tyle co chciałem powiedzieć na temat przeglądania tablic. Oczywiście nie są to jedyne sposoby, ale wg. one są warte uwagi.

Może Cię zainteresować

Sprawdź, jak zostać testerem oprogramowania lub Java developerem! Poznaj kursy online!

Architektura globalnego e-commerce: Jak zbudować sklep gotowy na podbój świata?

Java obchodzi 30. urodziny – język programowania który zmienił świat technologii

Jak zacząć projektować aplikację, nie mając gotowego pomysłu?

Serwer dla małej firmy – czym kierować się przy jego wyborze?

WebInside.pl 2003-07-24 2003-07-24
Udostępnij ten artykuł
Facebook Twitter Kopiuj link Wydrukuj
Udostępnij
Poprzedni artykuł Hasłowanie strony
Następny artykuł Zabezpieczenia formularzy
Zostaw komentarz lub opinię

Dodaj komentarz Anuluj pisanie odpowiedzi

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Najnowsze artykuły

Procesor AMD Ryzen 7
Najlepsze procesory z pamięcią 3D V-Cache: Wydajność dla graczy i profesjonalistów
Technologie
Jak przygotować sklep internetowy na automatyzację obsługi klienta?
Artykuły partnerskie
the nvidia logo is displayed on a table
Nvidia przyłapana? Gigant AI chciał kupić miliony pirackich książek
AI Aktualności
Najczęstsze błędy w SMS marketingu: jak nie przepalić budżetu?
E-marketing
4 najczęstsze cyberzagrożenia w przemyśle
Technologie
Jak uratować zaschnięty tusz do drukarki? Skuteczne domowe sposoby i porady
Poradniki
Model 3D jako wspólne źródło danych dla projektu, produkcji i montażu
Artykuły partnerskie
Dlaczego wideo z telefonu sprzedaje na TikToku lepiej niż profesjonalne spoty?
Artykuły partnerskie
Dwa ekrany zawsze pod ręką – zalety korzystania z monitora przenośnego na co dzień
Technologie
Rola nowoczesnych technologii w procesie rehabilitacji
Artykuły partnerskie
banner
Chcesz umieścić swoją reklamę w portalu WebInside.pl?
Skontaktuj się z nami, a zaproponujemy interesujące formy reklamy.
Skontaktuj się

Inne polecane artykuły

Technologie webowe

Sprawdź, jak zostać testerem oprogramowania lub Java developerem! Poznaj kursy online!

5 min czytania
Technologie webowe

Architektura globalnego e-commerce: Jak zbudować sklep gotowy na podbój świata?

7 min czytania
MacBook Pro showing programming language
Technologie webowe

Java obchodzi 30. urodziny – język programowania który zmienił świat technologii

9 min czytania
AktualnościTechnologie webowe

Jak zacząć projektować aplikację, nie mając gotowego pomysłu?

9 min czytania
woman in black top using Surface laptop
Technologie webowe

Serwer dla małej firmy – czym kierować się przy jego wyborze?

5 min czytania
Technologie webowe

Jaki hosting wybrać pod Laravel? Kompleksowy przewodnik dla twórców aplikacji webowych

6 min czytania
programming language
Technologie webowe

Kaskadowość w CSS – wszystko, co musisz wiedzieć

7 min czytania
two women talking while looking at laptop computer
Technologie webowe

Darmowe kreatory stron WWW – stwórz swoją stronę w godzinę

14 min czytania
//

WebInside.pl – portal technologiczny. Aktualności ze świata technologii, webmastering, marketing internetowy, AI, poradniki.

 

Partnerzy

Wszystkie kategorie

  • AI
  • Aktualności
  • Artykuły partnerskie
  • E-marketing
  • e(Biznes)
  • Poradniki
  • Publicystyka
  • Technologie
  • Technologie webowe

Ostatnio dodane

  • Najlepsze procesory z pamięcią 3D V-Cache: Wydajność dla graczy i profesjonalistów
  • Jak przygotować sklep internetowy na automatyzację obsługi klienta?
  • Nvidia przyłapana? Gigant AI chciał kupić miliony pirackich książek
  • Najczęstsze błędy w SMS marketingu: jak nie przepalić budżetu?

Kontakt

Chcesz się z nami skontaktować? Jesteś zainteresowany reklamą lub artykułem sponsorowanym?

Skorzystaj z formularza kontaktowego lub napisz do nas na kontakt@webinside.pl

WebInside.plWebInside.pl
WebInside.pl © 2023 | Mapa strony | Forum | Polityka prywatności
Witaj ponownie!

Zaloguj się do swojego konta

Zapomniałeś hasła?