Wbudowane funkcje i dokumentacja php.net
🎯 Po tej lekcji samodzielnie znajdziesz i użyjesz dowolnej wbudowanej funkcji PHP korzystając z dokumentacji php.net.
PHP dostarcza tysiące gotowych funkcji do pracy z tekstem, liczbami, tablicami, datami i wieloma innymi rzeczami. Nie musisz ich wszystkich zapamiętywać — musisz wiedzieć, jak je znaleźć i przeczytać ich dokumentację.
Jak czytać php.net
Oficjalna dokumentacja PHP pod adresem php.net zawiera opis każdej wbudowanej funkcji. Dla każdej znajdziesz:
- Składnię — jakie parametry przyjmuje i co zwraca
- Opis parametrów — znaczenie i typy
- Zwracaną wartość — co dostaniesz z powrotem
- Przykłady — działający kod z wynikami
- Uwagi — pułapki, wersje PHP, zachowania graniczne
- Komentarze użytkowników — dodatkowe przykłady od społeczności
php.net/strlen (lub php.net/nazwa_funkcji) — zostaniesz przeniesiony od razu na stronę tej funkcji. Można też po prostu wyszukać w Google "PHP strlen" — oficjalna dokumentacja zawsze pojawia się na szczycie wyników.Funkcje do pracy z tekstem
strlen — długość stringa
strlen zwraca liczbę bajtów w stringu (nie znaków — ważne przy polskich literach):
<?php
declare(strict_types=1);
echo strlen('PHP'); // wynik: 3
echo strlen('Ola'); // wynik: 3
echo strlen(''); // wynik: 0
// Uwaga na polskie znaki — zajmują 2 bajty w UTF-8:
echo strlen('Łódź'); // wynik: 7 (nie 4!)
// Ł=2, ó=2, d=1, ź=2 → razem 7 bajtów
Do liczenia znaków Unicode (z polskimi literami) użyj mb_strlen.
str_replace — zamiana tekstu
str_replace zamienia wszystkie wystąpienia podanego ciągu na inny:
<?php
declare(strict_types=1);
$opis = 'Ola kupuje jabłka i jabłka są smaczne.';
echo str_replace('jabłka', 'gruszki', $opis);
// wynik: Ola kupuje gruszki i gruszki są smaczne.
// Jeśli szukany tekst nie istnieje — zwraca oryginał:
echo str_replace('banany', 'winogrona', $opis);
// wynik: Ola kupuje jabłka i jabłka są smaczne.
Funkcje do pracy z liczbami
round — zaokrąglanie
round zaokrągla liczbę do podanej liczby miejsc po przecinku:
<?php
declare(strict_types=1);
echo round(3.14159, 2); // wynik: 3.14
echo round(2.5); // wynik: 3
echo round(19.995, 2); // wynik: 20 (uwaga: float może zaskoczyć)
intdiv — dzielenie całkowitoliczbowe
intdiv dzieli dwie liczby i zwraca tylko całkowitą część wyniku:
<?php
declare(strict_types=1);
echo intdiv(10, 3); // wynik: 3 (10 ÷ 3 = 3 reszty 1)
echo intdiv(17, 5); // wynik: 3
echo intdiv(8, 2); // wynik: 4
Przydaje się, gdy liczymy np. ile pełnych tuzinów mieści się w zamówieniu.
Funkcje do pracy z tablicami
count — liczba elementów
count zwraca liczbę elementów tablicy:
<?php
declare(strict_types=1);
$owoce = ['jabłko', 'gruszka', 'śliwka'];
echo count($owoce); // wynik: 3
$pusta = [];
echo count($pusta); // wynik: 0
in_array — czy wartość jest w tablicy
in_array sprawdza, czy podana wartość istnieje w tablicy. Zwraca true lub false:
<?php
declare(strict_types=1);
$owoce = ['jabłko', 'gruszka', 'śliwka'];
var_dump(in_array('gruszka', $owoce)); // wynik: bool(true)
var_dump(in_array('mango', $owoce)); // wynik: bool(false)
in_array używa luźnego porównania (==). Jako trzeci argument podaj true, żeby wymusić ścisłe (===): in_array('1', [1, 2], true) zwróci false, bo '1' (string) ≠ 1 (int).implode — tablica do stringa
implode łączy elementy tablicy w jeden ciąg znaków, wstawiając separator między nimi:
<?php
declare(strict_types=1);
$owoce = ['jabłko', 'gruszka', 'śliwka'];
echo implode(', ', $owoce);
// wynik: jabłko, gruszka, śliwka
echo implode(' | ', $owoce);
// wynik: jabłko | gruszka | śliwka
$tagi = ['PHP', 'programowanie', 'web'];
echo implode(' #', $tagi);
// wynik: PHP #programowanie #web
Praktyczny przykład — razem
Połączmy kilka funkcji w jednym zadaniu: przetworzenie listy zakupów:
<?php
declare(strict_types=1);
$lista = ['mleko', 'chleb', 'jabłka', 'sery', 'masło'];
echo 'Liczba produktów: ' . count($lista);
// wynik: Liczba produktów: 5
var_dump(in_array('jabłka', $lista));
// wynik: bool(true)
$skrot = implode(', ', $lista);
echo 'Lista: ' . $skrot;
// wynik: Lista: mleko, chleb, jabłka, sery, masło
// Zamień 'jabłka' na 'gruszki':
$skrot = str_replace('jabłka', 'gruszki', $skrot);
echo 'Zmieniona lista: ' . $skrot;
// wynik: Zmieniona lista: mleko, chleb, gruszki, sery, masło
Wbudowane funkcje PHP to Twój gotowy zestaw narzędzi — nie musisz wynajdywać koła na nowo. Kiedy napotkasz problem, zajrzyj na php.net — jest duża szansa, że ktoś już napisał dla Ciebie dokładnie to, czego potrzebujesz.
Funkcje w tej lekcji
Sprawdź się
Dlaczego strlen('Ola') zwraca 3, ale strlen('Łódź') zwraca 7, a nie 4?
strlen liczy bajty, nie znaki. W UTF-8 polskie litery (ą, ę, ó itd.) zajmują 2 bajty każda. Łódź = Ł(2)+ó(2)+d(1)+ź(2) = 7 bajtów. Do liczenia znaków Unicode użyj mb_strlen.
Co zwraca in_array('mango', ['jabłko', 'gruszka'])?
in_array zwraca bool: true gdy element jest w tablicy, false gdy go nie ma. 'mango' nie istnieje w podanej tablicy, więc wynik to false.
Jak implode łączy elementy tablicy ['a', 'b', 'c'] z separatorem '-'?
implode(separator, tablica) wstawia separator MIĘDZY elementy (nie przed pierwszym ani po ostatnim). Wynik to 'a-b-c'.
Czego szukasz na php.net, żeby zobaczyć składnię funkcji i przykłady użycia?
php.net to oficjalna dokumentacja PHP — dla każdej funkcji znajdziesz tam pełną składnię, opis parametrów, zwracaną wartość i mnóstwo przykładów od społeczności.
Ćwiczenie
Masz tablicę zadań: ['kup mleko', 'zadzwoń do Kuby', 'napisz raport']. Sprawdź, ile zadań jest na liście (count). Sprawdź, czy 'zadzwoń do Kuby' jest na liście (in_array). Wyświetl wszystkie zadania jako jeden string oddzielony średnikiem i spacją (implode).
Pokaż rozwiązanie
<?php
declare(strict_types=1);
$zadania = ['kup mleko', 'zadzwoń do Kuby', 'napisz raport'];
echo count($zadania); // wynik: 3
var_dump(in_array('zadzwoń do Kuby', $zadania)); // wynik: bool(true)
echo implode('; ', $zadania);
// wynik: kup mleko; zadzwoń do Kuby; napisz raport