Leksykon PHP

Funkcje, metody i pojęcia PHP — krótko i z przykładem.

  • abs — Zwraca wartość bezwzględną liczby całkowitej lub zmiennoprzecinkowej — usuwa znak minus.
  • addcslashes — Dodaje ukośniki odwrotne przed podanymi znakami w łańcuchu. Bardziej elastyczna niż addslashes — sam decydujesz, które znaki escapować.
  • addslashes — Dodaje ukośniki przed znakami specjalnymi (cudzysłów, apostrof, ukośnik odwrotny, null) — historycznie używana do escape'owania danych.
  • array_all — Zwraca true, jeśli wszystkie elementy tablicy spełniają warunek callbacku. Zwraca true dla pustej tablicy.
  • array_any — Zwraca true, jeśli choć jeden element tablicy spełnia warunek callbacku. Zwraca false dla pustej tablicy.
  • array_change_key_case — Zmienia wielkość liter kluczy tablicy na małe (domyślnie) lub wielkie. Działa wyłącznie na znakach ASCII.
  • array_chunk — Dzieli tablicę na mniejsze paczki o podanej wielkości. Zwraca tablicę tablic.
  • array_column — Wyodrębnia wartości jednej kolumny z tablicy wielowymiarowej. Opcjonalnie indeksuje wynik.
  • array_combine — Tworzy tablicę asocjacyjną z dwóch tablic: jednej z kluczami i drugiej z wartościami.
  • array_count_values — Zlicza wystąpienia każdej wartości w tablicy. Wartości muszą być typu int lub string.
  • array_diff — Zwraca elementy pierwszej tablicy, których wartości nie występują w pozostałych tablicach. Klucze są zachowane.
  • array_diff_assoc — Zwraca elementy pierwszej tablicy, których para klucz+wartość nie występuje w pozostałych tablicach. Klucze są zachowane.
  • array_diff_key — Zwraca elementy pierwszej tablicy, których klucze nie występują w pozostałych tablicach. Porównuje klucze, nie wartości.
  • array_fill — Tworzy tablicę wypełnioną podaną wartością. Indeksy zaczynają się od wybranej liczby całkowitej.
  • array_fill_keys — Tworzy tablicę z podanych kluczy i wypełnia każdy element tą samą wartością.
  • array_filter — Filtruje elementy tablicy według podanego warunku. Bez callbacku usuwa wartości fałszywe. Zachowuje oryginalne klucze.
  • array_find — Zwraca wartość pierwszego elementu tablicy, dla którego callback zwraca true. Zwraca null, jeśli żaden nie pasuje.
  • array_find_key — Zwraca klucz pierwszego elementu tablicy, dla którego callback zwraca true. Zwraca null, jeśli żaden nie pasuje.
  • array_flip — Zamienia klucze i wartości tablicy miejscami. Zwraca nową tablicę — oryginał pozostaje niezmieniony.
  • array_intersect — Zwraca elementy wspólne dla wszystkich podanych tablic (część wspólną po wartościach). Klucze są zachowane.
  • array_intersect_assoc — Zwraca elementy pierwszej tablicy, których para klucz+wartość występuje we wszystkich pozostałych tablicach. Klucze są zachowane.
  • array_intersect_key — Zwraca elementy pierwszej tablicy, których klucze występują we wszystkich pozostałych. Porównuje klucze, nie wartości.
  • array_is_list — Sprawdza, czy tablica jest listą — czyli ma klucze całkowite 0, 1, 2, … bez przerw. Dostępna od PHP 8.1.
  • array_key_exists — Sprawdza, czy podany klucz istnieje w tablicy. Zwraca true nawet gdy wartość to null.
  • array_key_first — Zwraca pierwszy klucz tablicy bez jej modyfikowania ani przesuwania wskaźnika. Dla pustej tablicy zwraca null.
  • array_key_last — Zwraca ostatni klucz tablicy bez jej modyfikowania ani przesuwania wskaźnika. Dla pustej tablicy zwraca null.
  • array_keys — Zwraca tablicę wszystkich kluczy podanej tablicy. Opcjonalnie filtruje klucze po wartości.
  • array_map — Stosuje funkcję do każdego elementu tablicy i zwraca nową tablicę z wynikami.
  • array_merge — Łączy dwie lub więcej tablic. Numeryczne klucze są reindeksowane, tekstowe — nadpisywane.
  • array_merge_recursive — Łączy tablice jak array_merge, lecz przy kolizji kluczy tekstowych scala wartości w tablice zamiast je nadpisywać.
  • array_multisort — Sortuje jedną lub wiele tablic naraz, zachowując powiązania między kolumnami — jak ORDER BY w SQL.
  • array_pad — Uzupełnia tablicę do zadanej długości, wypełniając brakujące miejsca podaną wartością.
  • array_pop — Usuwa i zwraca ostatni element tablicy. Modyfikuje tablicę bezpośrednio przez referencję.
  • array_product — Zwraca iloczyn wszystkich wartości w tablicy. Działa z liczbami całkowitymi i zmiennoprzecinkowymi.
  • array_push — Dodaje jeden lub więcej elementów na koniec tablicy i zwraca nową liczbę elementów.
  • array_rand — Zwraca losowy klucz lub tablicę losowych kluczy z podanej tablicy. Gdy num = 1, zwraca pojedynczy klucz (int lub string).
  • array_reduce — Redukuje tablicę do pojedynczej wartości, iterując przez nią z funkcją zwrotną i wartością akumulatora.
  • array_replace — Zastępuje wartości pierwszej tablicy wartościami z kolejnych tablic, dopasowując po kluczach.
  • array_reverse — Zwraca tablicę z elementami w odwróconej kolejności. Opcjonalnie zachowuje oryginalne klucze.
  • array_search — Szuka wartości w tablicy i zwraca jej klucz. Gdy nie znajdzie — zwraca false.
  • array_shift — Usuwa i zwraca pierwszy element tablicy. Reindeksuje numeryczne klucze od zera.
  • array_slice — Wyodrębnia fragment tablicy od podanego indeksu. Domyślnie reindeksuje klucze numeryczne.
  • array_splice — Usuwa fragment tablicy i opcjonalnie wstawia w jego miejsce nowe elementy. Modyfikuje tablicę przez referencję.
  • array_sum — Zwraca sumę wszystkich wartości w tablicy. Działa z liczbami całkowitymi i zmiennoprzecinkowymi.
  • array_udiff — Zwraca elementy pierwszej tablicy, których wartości nie występują w pozostałych, używając własnej funkcji porównującej wartości.
  • array_uintersect — Zwraca elementy pierwszej tablicy, których wartości występują we wszystkich pozostałych, używając własnej funkcji porównującej wartości.
  • array_unique — Usuwa zduplikowane wartości z tablicy. Zachowuje klucz pierwszego wystąpienia każdej wartości.
  • array_unshift — Dodaje jeden lub więcej elementów na początek tablicy. Reindeksuje numeryczne klucze od zera.
  • array_values — Zwraca tablicę z wartościami podanej tablicy, numerycznie reindeksowaną od zera.
  • array_walk — Wywołuje funkcję na każdym elemencie tablicy, modyfikując ją w miejscu przez referencję. Zwraca true.
  • array_walk_recursive — Wywołuje callback dla każdego elementu zagnieżdżonej tablicy wielowymiarowej, rekurencyjnie wchodząc w podelementy tablicowe.
  • arsort — Sortuje tablicę malejąco według wartości, zachowując powiązania klucz–wartość. Modyfikuje tablicę przez referencję.
  • asort — Sortuje tablicę rosnąco według wartości, zachowując powiązania klucz–wartość. Modyfikuje tablicę przez referencję.
  • assert — Sprawdza warunek i rzuca AssertionError jeśli jest fałszywy — narzędzie do sanity-checków w czasie dewelopmentu.
  • atan2 — Zwraca arcus tangens ilorazu y/x w radianach, uwzględniając ćwiartkę układu współrzędnych.
  • base64_decode — Dekoduje string zakodowany w Base64 z powrotem do oryginalnych danych. Zwraca false przy nieprawidłowym wejściu.
  • base64_encode — Koduje dane binarne lub string do postaci Base64 — bezpiecznego dla tekstu ciągu znaków ASCII.
  • base_convert — Konwertuje liczbę między dowolnymi systemami liczbowymi (od podstawy 2 do 36).
  • basename — Zwraca końcowy element ścieżki — nazwę pliku (z rozszerzeniem lub bez). Nie sprawdza, czy ścieżka istnieje.
  • bcadd — Dodaje dwie liczby o dowolnej precyzji (string) — niezastąpione przy operacjach na pieniądzach, gdzie float zawodzi.
  • bccomp — Porównuje dwie liczby o dowolnej precyzji (string). Zwraca -1, 0 lub 1 — bezpieczne porównanie kwot.
  • bcdiv — Dzieli dwie liczby o dowolnej precyzji (string). Dzielenie przez zero rzuca DivisionByZeroError (PHP 8).
  • bcfloor — Zaokrągla liczbę o dowolnej precyzji (string) w dół do najbliższej liczby całkowitej — dostępna od PHP 8.4.
  • bcmod — Zwraca resztę z dzielenia dwóch liczb o dowolnej precyzji (string). Działa też na liczbach ułamkowych.
  • bcmul — Mnoży dwie liczby o dowolnej precyzji (string) — niezbędne przy obliczaniu cen brutto, rabatów i prowizji.
  • bcpow — Podnosi liczbę o dowolnej precyzji (string) do potęgi — przydatne przy obliczeniach procentu składanego.
  • bcpowmod — Oblicza modułowe potęgowanie: (num ^ exponent) mod modulus — kluczowe w kryptografii RSA i algorytmach haszowania.
  • bcround — Zaokrągla liczbę o dowolnej precyzji (string) do podanej liczby miejsc — dostępna od PHP 8.4.
  • bcscale — Ustawia lub odczytuje globalną domyślną precyzję (scale) dla wszystkich funkcji bcmath w bieżącym skrypcie.
  • bcsqrt — Oblicza pierwiastek kwadratowy liczby o dowolnej precyzji (string) z zadaną dokładnością dziesiętną.
  • bcsub — Odejmuje dwie liczby o dowolnej precyzji (string) — używaj zamiast float przy operacjach na cenach i saldach.
  • bin2hex — Konwertuje ciąg bajtów na reprezentację szesnastkową (hex). Używana po random_bytes() do zamiany losowych bajtów na czytelny ciąg znaków.
  • bindec — Konwertuje ciąg binarny (zapis dwójkowy) na odpowiadającą mu liczbę dziesiętną.
  • boolval — Konwertuje wartość na typ bool. Zero, pusty string, "0", pusta tablica i null dają false — wszystko inne daje true.
  • call_user_func — Wywołuje funkcję lub metodę przekazaną jako callable z podanymi argumentami. Pozwala dynamicznie wybierać, co wywołać, w czasie wykonania programu.
  • call_user_func_array — Wywołuje funkcję lub metodę przekazaną jako callable, podając argumenty w formie tablicy. Wygodna gdy lista argumentów budowana jest dynamicznie.
  • ceil — Zaokrągla liczbę w górę do najbliższej liczby całkowitej i zwraca wynik jako float.
  • checkdate — Sprawdza, czy podana kombinacja miesiąca, dnia i roku tworzy prawidłową datę gregoriańską. Uwzględnia lata przestępne.
  • chmod — Ustawia uprawnienia pliku lub katalogu. Przyjmuje wartość ósemkową (np. 0644). Zwraca true przy sukcesie.
  • chr — Tworzy jednobajtowy łańcuch ze znaku o podanym kodzie ASCII. Odwrotność ord — przydatna do budowania znaków kontrolnych lub operacji na bajtach.
  • chunk_split — Dzieli ciąg na kawałki o podanej długości, wstawiając separator po każdym z nich.
  • class_exists — Sprawdza, czy dana klasa jest zdefiniowana. Domyślnie uruchamia zarejestrowane autolodery (np. Composer), jeśli klasa nie jest jeszcze załadowana.
  • class_implements — Zwraca tablicę interfejsów implementowanych przez daną klasę lub obiekt. Zwraca false przy błędzie.
  • class_parents — Zwraca tablicę asocjacyjną klas nadrzędnych danej klasy lub obiektu, od bezpośredniego rodzica do korzenia.
  • class_uses — Zwraca tablicę traitów bezpośrednio użytych przez klasę lub obiekt. Nie uwzględnia traitów z klas nadrzędnych — tylko bieżący poziom hierarchii.
  • clearstatcache — Czyści wewnętrzną pamięć podręczną wyników stat PHP (rozmiar, czas modyfikacji itp.). Nie zwraca wartości.
  • collator_create — Tworzy obiekt Collator do sortowania ciągów zgodnie z regułami lokalizacji (np. polskie 'ą' po 'a', nie po 'z'). Wymaga rozszerzenia intl.
  • compact — Tworzy tablicę asocjacyjną z nazw zmiennych: klucze to nazwy zmiennych, wartości — ich zawartość z bieżącego zakresu.
  • constant — Zwraca wartość stałej o podanej nazwie. Przydatna gdy nazwa stałej jest przechowywana w zmiennej.
  • copy — Kopiuje plik ze ścieżki źródłowej do docelowej. Jeśli plik docelowy istnieje, zostaje nadpisany. Zwraca bool.
  • cos — Zwraca cosinus kąta podanego w radianach. Do przeliczenia stopni na radiany użyj deg2rad.
  • count — Zwraca liczbę elementów w tablicy.
  • crc32 — Oblicza 32-bitową sumę kontrolną CRC ciągu znaków. Do wykrywania błędów transmisji — nigdy do celów kryptograficznych ani weryfikacji integralności.
  • ctype_alnum — Sprawdza, czy wszystkie znaki w ciągu to litery lub cyfry (A–Z, a–z, 0–9). Nie obsługuje znaków spoza ASCII, w tym polskich liter.
  • ctype_alpha — Sprawdza, czy wszystkie znaki w ciągu to litery alfabetu (A–Z, a–z). Nie obsługuje liter spoza ASCII — polskie ą, ę, ó i inne zwracają false.
  • ctype_cntrl — Sprawdza, czy wszystkie znaki w ciągu to znaki sterujące ASCII (kody 0–31 oraz 127). Pusta wartość zwraca false.
  • ctype_digit — Sprawdza, czy wszystkie znaki w ciągu znaków to cyfry (0–9). Szybsza alternatywa dla wyrażeń regularnych przy walidacji liczb całkowitych.
  • ctype_graph — Sprawdza czy wszystkie znaki stringa są widoczne (0x21–0x7E). Spacja i znaki kontrolne dają false.
  • ctype_lower — Sprawdza, czy wszystkie znaki w ciągu to małe litery ASCII (a–z). Cyfry, spacje i wielkie litery zwracają false.
  • ctype_print — Sprawdza czy wszystkie znaki stringa są drukowalne (0x20–0x7E). Zwraca true lub false.
  • ctype_punct — Sprawdza, czy wszystkie znaki w ciągu to znaki interpunkcyjne (drukowalne, niebędące alfanumerycznymi ani spacją).
  • ctype_space — Sprawdza, czy wszystkie znaki w ciągu to białe znaki: spacja, tabulator, nowa linia (\n), powrót karetki (\r), \v lub \f.
  • ctype_upper — Sprawdza, czy wszystkie znaki w ciągu to wielkie litery ASCII (A–Z). Pusta wartość i cyfry zwracają false.
  • ctype_xdigit — Sprawdza, czy wszystkie znaki w ciągu to cyfry szesnastkowe: 0–9, a–f oraz A–F.
  • current — Zwraca wartość elementu wskazywanego przez wewnętrzny wskaźnik tablicy, nie przesuwając wskaźnika.
  • date — Formatuje datę i czas jako ciąg znaków na podstawie znacznika czasu Unix. Bez znacznika używa bieżącej chwili.
  • date_create — Tworzy obiekt DateTime na podstawie tekstowego opisu daty. Zwraca false, gdy parsowanie się nie powiedzie.
  • date_default_timezone_get — Zwraca nazwę aktualnie ustawionej domyślnej strefy czasowej dla wszystkich funkcji daty i czasu w skrypcie.
  • date_default_timezone_set — Ustawia domyślną strefę czasową używaną przez wszystkie funkcje daty i czasu w bieżącym skrypcie.
  • date_diff — Oblicza różnicę między dwoma datami i zwraca obiekt DateInterval z liczbą lat, miesięcy, dni i innych składowych.
  • date_parse — Parsuje ciąg daty i zwraca tablicę asocjacyjną ze składowymi: rokiem, miesiącem, dniem, godziną oraz listą błędów.
  • datefmt_create — Tworzy obiekt IntlDateFormatter do lokalizowanego formatowania dat i godzin (np. 'pl_PL' → '15 czerwca 2024'). Wymaga rozszerzenia intl.
  • datefmt_format — Formatuje datę lub znacznik czasu do ciągu tekstowego według ustawień obiektu IntlDateFormatter. Zwraca false przy błędzie. Wymaga intl.
  • debug_backtrace — Zwraca stos wywołań funkcji jako tablicę — każdy element opisuje jedną ramkę: funkcję, plik, linię i argumenty.
  • decbin — Konwertuje liczbę całkowitą dziesiętną na jej reprezentację binarną (zapis dwójkowy).
  • dechex — Konwertuje liczbę całkowitą dziesiętną na jej reprezentację szesnastkową (hex).
  • defined — Sprawdza, czy stała o podanej nazwie jest zdefiniowana. Zwraca true jeśli stała istnieje, false w przeciwnym razie.
  • deg2rad — Przelicza kąt w stopniach na radiany. Wymagane przed przekazaniem kąta do funkcji trygonometrycznych PHP.
  • dirname — Zwraca katalog nadrzędny podanej ścieżki. Parametr $levels pozwala wskoczyć o kilka poziomów wyżej.
  • disk_free_space — Zwraca ilość wolnego miejsca na dysku w bajtach (float) dla podanego katalogu lub false przy błędzie.
  • echo — Wyświetla (wypisuje) jeden lub więcej ciągów znaków.
  • empty — Sprawdza, czy zmienna jest "pusta". Zwraca true dla: "", 0, "0", null, [], false i niezdefiniowanych zmiennych.
  • end — Przesuwa wewnętrzny wskaźnik tablicy na ostatni element i zwraca jego wartość. Dla pustej tablicy zwraca false.
  • enum_exists — Sprawdza, czy enum o podanej nazwie istnieje. Działa analogicznie do `class_exists`, ale zwraca `true` wyłącznie dla typów wyliczeniowych (enum).
  • error_get_last — Zwraca tablicę z informacjami o ostatnim błędzie PHP (typ, komunikat, plik, linia) lub null, gdy błędu nie było.
  • error_log — Zapisuje komunikat do logu błędów PHP, wysyła go e-mailem lub do pliku. Podstawowe narzędzie do logowania błędów na produkcji.
  • error_reporting — Ustawia poziom raportowania błędów PHP w bieżącym skrypcie. Kontroluje które błędy są wyświetlane lub logowane.
  • eval — Wykonuje podany string jako kod PHP. Skrajnie niebezpieczna — prawie zawsze da się jej uniknąć.
  • exp — Oblicza e podniesione do potęgi podanego wykładnika (funkcja eksponencjalna).
  • explode — Dzieli ciąg znaków na tablicę używając podanego separatora. Prosta i wydajna alternatywa dla preg_split() przy stałych separatorach.
  • extract — Importuje klucze tablicy jako zmienne do bieżącego zasięgu. Konstrukcja językowa — nigdy nie używaj z danymi od użytkownika.
  • fclose — Zamyka otwarty uchwyt pliku zwrócony przez fopen. Zwalnia zasoby systemowe. Zwraca true przy sukcesie.
  • fdiv — Dzieli dwie liczby zmiennoprzecinkowe bez rzucania błędu przy dzieleniu przez zero.
  • feof — Sprawdza, czy wskaźnik zasobu dotarł do końca pliku (EOF). Zwraca true po wyczerpaniu danych.
  • fgetc — Odczytuje jeden znak z otwartego pliku. Zwraca string o długości 1 lub false po osiągnięciu końca pliku.
  • fgetcsv — Wczytuje jeden wiersz z otwartego uchwytu pliku CSV i zwraca go jako tablicę pól. Zwraca false na końcu pliku.
  • fgets — Wczytuje jedną linię z uchwytu pliku. Zwraca string z końcem linii lub false po osiągnięciu końca pliku.
  • file — Wczytuje plik do tablicy — każdy element to jedna linia. Zwraca false przy błędzie. Obsługuje flagi FILE_IGNORE_NEW_LINES i FILE_SKIP_EMPTY_LINES.
  • file_exists — Sprawdza, czy plik lub katalog o podanej ścieżce istnieje. Zwraca true lub false.
  • file_get_contents — Wczytuje zawartość pliku (lub URL) do stringa. Zwraca false przy błędzie. Nigdy nie przekazuj niezaufanych danych jako ścieżki.
  • file_put_contents — Zapisuje dane do pliku. Zwraca liczbę zapisanych bajtów lub false przy błędzie. Flaga FILE_APPEND dopisuje zamiast nadpisywać.
  • fileatime — Zwraca czas ostatniego dostępu do pliku jako uniksowy znacznik czasu lub false przy błędzie.
  • filemtime — Zwraca czas ostatniej modyfikacji pliku jako uniksowy znacznik czasu (int) lub false przy błędzie.
  • fileperms — Zwraca uprawnienia pliku lub katalogu jako liczbę całkowitą. Użyj sprintf('%o', ...) by uzyskać zapis ósemkowy.
  • filesize — Zwraca rozmiar pliku w bajtach jako int lub false przy błędzie. Nie działa na katalogach. Wyniki są buforowane.
  • filter_has_var — Sprawdza czy zmienna istnieje w superglobalnej tablicy wejściowej (GET, POST, COOKIE, SERVER, ENV).
  • filter_id — Zwraca numeryczne ID filtru na podstawie jego nazwy tekstowej. Przydatna przy dynamicznym wyborze filtru.
  • filter_input — Pobiera zmienną ze superglobala (GET, POST, COOKIE, SERVER, ENV) i od razu filtruje lub waliduje jej wartość.
  • filter_input_array — Pobiera i filtruje wiele wartości z superglobalnej tablicy (GET, POST, COOKIE…) według specyfikacji filtrów.
  • filter_list — Zwraca tablicę nazw wszystkich dostępnych filtrów rozszerzenia filter. Brak argumentów.
  • filter_var — Filtruje lub waliduje wartość. Przy FILTER_VALIDATE_* zwraca przefiltrowaną wartość albo false. Obsługuje e-mail, liczby, URL i inne.
  • filter_var_array — Filtruje lub waliduje wiele wartości naraz według specyfikacji. Idealna do obsługi formularzy i danych wejściowych.
  • floatval — Konwertuje wartość na liczbę zmiennoprzecinkową float. Alias: doubleval, (float).
  • flock — Zakłada doradcze blokady na plik, by uniknąć równoczesnego zapisu z kilku procesów. Zwraca true przy sukcesie.
  • floor — Zaokrągla liczbę w dół do najbliższej liczby całkowitej i zwraca wynik jako float.
  • flush — Wymusza natychmiastowe wysłanie buforowanych danych wyjścia z PHP do serwera WWW lub systemu operacyjnego.
  • fmod — Zwraca resztę z dzielenia dwóch liczb zmiennoprzecinkowych (odpowiednik % dla float).
  • fnmatch — Sprawdza, czy nazwa pliku pasuje do wzorca powłoki (glob). Obsługuje * ? i klasy znaków []. Zwraca bool.
  • fopen — Otwiera plik lub URL i zwraca uchwyt zasobu. Używaj trybów: r (odczyt), w (zapis/nadpisanie), a (dopisywanie), x (utwórz nowy).
  • fpassthru — Wysyła pozostałą zawartość uchwytu pliku bezpośrednio na wyjście i zwraca liczbę wysłanych bajtów.
  • fprintf — Zapisuje sformatowany ciąg do strumienia pliku i zwraca liczbę zapisanych znaków. Działa jak printf, ale kieruje wyjście do pliku.
  • fputcsv — Formatuje tablicę jako wiersz CSV i zapisuje go do otwartego uchwytu pliku. Zwraca długość zapisanego stringa lub false.
  • fread — Odczytuje z otwartego uchwytu pliku maksymalnie $length bajtów. Zwraca string lub false przy błędzie.
  • fseek — Przesuwa wskaźnik pozycji w otwartym pliku. Zwraca 0 przy sukcesie lub -1 przy błędzie.
  • ftell — Zwraca bieżącą pozycję wskaźnika w otwartym pliku (w bajtach od początku). Zwraca false przy błędzie.
  • func_get_args — Zwraca wszystkie argumenty przekazane do bieżącej funkcji jako tablicę. Pozwala obsłużyć zmienną liczbę parametrów bez deklarowania ich w sygnaturze.
  • func_num_args — Zwraca liczbę argumentów przekazanych do bieżącej funkcji. Przydatna razem z func_get_args() do obsługi zmiennej liczby parametrów.
  • function_exists — Sprawdza, czy dana funkcja jest dostępna — wbudowana w PHP lub zdefiniowana przez użytkownika. Przydatna przy detekcji rozszerzeń.
  • fwrite — Zapisuje string do otwartego uchwytu pliku. Zwraca liczbę zapisanych bajtów lub false przy błędzie.
  • get_called_class — Zwraca nazwę klasy użytej w wywołaniu statycznym (late static binding). Wewnątrz metody klasy odpowiada wyrażeniu `static::class`.
  • get_class — Zwraca nazwę klasy obiektu jako string. W PHP 8 preferuj nowocześniejszą składnię $obiekt::class, która jest szybsza i bardziej czytelna.
  • get_class_methods — Zwraca tablicę nazw publicznych metod danej klasy lub obiektu.
  • get_class_vars — Zwraca tablicę publicznych właściwości klasy wraz z ich domyślnymi wartościami. Przydatne do introspekcji struktury klasy bez tworzenia obiektu.
  • get_defined_vars — Zwraca tablicę asocjacyjną wszystkich zmiennych zdefiniowanych w bieżącym zasięgu. W funkcji widzi tylko zmienne lokalne, nie globalne.
  • get_object_vars — Zwraca tablicę właściwości obiektu dostępnych w bieżącym kontekście. Wywołana z zewnątrz klasy zwraca tylko właściwości publiczne.
  • get_parent_class — Zwraca nazwę klasy nadrzędnej lub false, jeśli klasa nie dziedziczy po żadnej innej. Przyjmuje obiekt lub nazwę klasy jako string.
  • getdate — Zwraca tablicę asocjacyjną z rozbiciem daty i czasu na składowe: rok, miesiąc, dzień, godzinę i inne.
  • getenv — Odczytuje wartość zmiennej środowiskowej. Używana do wczytywania sekretów (kluczy API, haseł DB) z pliku .env zamiast z kodu.
  • getrandmax — Zwraca największą możliwą wartość generowaną przez rand(). Na większości platform to 2147483647.
  • gettype — Zwraca nazwę typu zmiennej jako string: "integer", "double", "boolean", "string", "array", "NULL" lub "object".
  • glob — Wyszukuje pliki i katalogi pasujące do wzorca powłoki (np. *.txt). Zwraca tablicę dopasowań lub false przy błędzie.
  • gmdate — Formatuje datę i czas jako ciąg znaków według czasu UTC, niezależnie od ustawionej strefy czasowej.
  • gmmktime — Tworzy znacznik czasu Unix na podstawie składowych daty i czasu interpretowanych jako UTC, nie czas lokalny.
  • gmp_add — Dodaje dwie dowolnie duże liczby całkowite (GMP) i zwraca wynik jako obiekt GMP.
  • gmp_cmp — Porównuje dwie dowolnie duże liczby całkowite GMP; zwraca int: >0, 0 lub <0.
  • gmp_div_q — Dzieli całkowitoliczbowo dwie duże liczby GMP i zwraca iloraz jako obiekt GMP.
  • gmp_gcd — Oblicza największy wspólny dzielnik (NWD) dwóch dowolnie dużych liczb całkowitych GMP.
  • gmp_mod — Zwraca resztę z dzielenia (modulo) dwóch dowolnie dużych liczb całkowitych GMP.
  • gmp_mul — Mnoży dwie dowolnie duże liczby całkowite (GMP) i zwraca wynik jako obiekt GMP.
  • gmp_pow — Podnosi dowolnie dużą liczbę całkowitą GMP do potęgi i zwraca wynik jako obiekt GMP.
  • gmp_powm — Oblicza potęgowanie modulo (base^exp mod modulus) dla dużych liczb GMP — kluczowe w kryptografii.
  • gmp_prob_prime — Testuje pierwszość dużej liczby całkowitej GMP; zwraca 0 (złożona), 1 (prawdopodobnie pierwsza) lub 2 (na pewno pierwsza).
  • gmp_sub — Odejmuje dwie dowolnie duże liczby całkowite (GMP) i zwraca wynik jako obiekt GMP.
  • grapheme_strlen — Zlicza klastry grafemowe (znaki widziane przez użytkownika) w ciągu UTF-8. Poprawnie obsługuje emoji i litery łączone ze znakami diakrytycznymi.
  • grapheme_strpos — Wyszukuje podciąg w tekście UTF-8 i zwraca pozycję w klastrach grafemowych. Bezpieczna alternatywa strpos() dla emoji i znaków łączonych.
  • grapheme_substr — Zwraca podciąg ciągu UTF-8 liczony w klastrach grafemowych (znakach widzianych). Bezpieczna alternatywa mb_substr() przy emoji i znakach łączonych.
  • hash — Oblicza skrót danych wybranym algorytmem (sha256, sha512 i wiele innych). Do sum kontrolnych i integralności — nie do haseł.
  • hash_algos — Zwraca listę nazw algorytmów skrótu dostępnych w bieżącym środowisku PHP. Przydatna do diagnostyki i sprawdzania obsługi konkretnego algorytmu.
  • hash_equals — Porównuje dwa ciągi znaków w sposób odporny na ataki czasowe (timing-safe). Używaj zamiast === do porównywania tokenów CSRF, podpisów i innych sekretów.
  • hash_file — Oblicza skrót kryptograficzny zawartości pliku bez wczytywania go w całości do pamięci. Idealna do sum kontrolnych dużych plików.
  • hash_final — Finalizuje inkrementalne obliczanie skrótu i zwraca wynik. Kontekst HashContext jest po wywołaniu nieużywalny — zainicjuj nowy dla kolejnego skrótu.
  • hash_hkdf — Derywuje klucz kryptograficzny z materiału wejściowego metodą HKDF (Extract-and-Expand). Do rozszerzania kluczy — nie do przechowywania haseł.
  • hash_hmac — Oblicza HMAC — skrót wiadomości uwierzytelniony kluczem tajnym. Gwarantuje integralność i autentyczność danych. Używaj do podpisywania tokenów i webhooków.
  • hash_hmac_algos — Zwraca listę algorytmów skrótu obsługiwanych przez hash_hmac(). Podzbiór hash_algos() — nie wszystkie algorytmy nadają się do HMAC.
  • hash_init — Inicjuje inkrementalne obliczanie skrótu i zwraca HashContext. Używaj razem z hash_update() i hash_final() do haszowania dużych danych strumieniowo.
  • hash_pbkdf2 — Derywuje klucz kryptograficzny z hasła i soli wielokrotnymi iteracjami HMAC (PBKDF2). Do derywacji kluczy — nie do przechowywania haseł w bazie.
  • hash_update — Dostarcza kolejny fragment danych do kontekstu skrótu zainicjowanego przez hash_init(). Zwraca true — kontekst aktualizuje się w miejscu.
  • header — Wysyła nagłówek HTTP do przeglądarki. Musi być wywołana przed jakimkolwiek wyjściem (echo, HTML, spacja).
  • headers_sent — Sprawdza, czy nagłówki HTTP zostały już wysłane. Zwraca true, gdy wyjście zostało rozpoczęte i nie można już modyfikować nagłówków.
  • hex2bin — Dekoduje ciąg szesnastkowy na dane binarne. Odwrotność bin2hex — przydatna przy odczytywaniu danych zakodowanych heksadecymalnie.
  • hexdec — Konwertuje ciąg szesnastkowy (hex) na odpowiadającą mu liczbę dziesiętną.
  • hrtime — Zwraca czas monotonicznego zegara o wysokiej rozdzielczości jako tablicę [sekundy, nanosekundy] lub int nanosekund.
  • html_entity_decode — Konwertuje wszystkie encje HTML (w tym nazwane jak &eacute;) z powrotem na znaki.
  • htmlentities — Zamienia WSZYSTKIE znaki specjalne HTML na encje — w odróżnieniu od htmlspecialchars, koduje też znaki diakrytyczne i symbole.
  • htmlspecialchars — Zamienia znaki specjalne HTML na encje — kluczowa ochrona przed XSS. Używaj zawsze przy wyświetlaniu danych od użytkownika.
  • htmlspecialchars_decode — Zamienia encje HTML (&amp; &lt; &gt; &quot; &#039;) z powrotem na zwykłe znaki.
  • http_build_query — Zamienia tablicę lub obiekt na ciąg zapytania URL (query string), np. a=1&b=x+y. Przydatna przy budowaniu linków GET.
  • http_response_code — Ustawia lub odczytuje kod statusu HTTP odpowiedzi. Bez argumentu zwraca bieżący kod; z argumentem ustawia nowy.
  • hypot — Oblicza długość przeciwprostokątnej trójkąta prostokątnego na podstawie dwóch przyprostokątnych.
  • implode — Łączy elementy tablicy w jeden ciąg znaków, wstawiając separator między nimi.
  • in_array — Sprawdza, czy podana wartość istnieje w tablicy. Zwraca true lub false.
  • ini_get — Zwraca bieżącą wartość dyrektywy php.ini jako string. Zwraca false, gdy dyrektywa nie istnieje.
  • ini_set — Ustawia wartość dyrektywy php.ini w czasie działania skryptu. Zmiana obowiązuje tylko dla bieżącego żądania.
  • intdiv — Wykonuje dzielenie całkowitoliczbowe i zwraca iloraz jako liczbę całkowitą.
  • interface_exists — Sprawdza, czy interfejs o podanej nazwie istnieje. Analogiczna do `class_exists`, ale zwraca `true` tylko dla interfejsów, nie dla klas ani traitów.
  • intval — Konwertuje wartość na liczbę całkowitą int, opcjonalnie z podaną podstawą systemu liczbowego.
  • is_a — Sprawdza, czy obiekt jest instancją podanej klasy lub jej podklasy. Działa jak `instanceof`, ale akceptuje też nazwę klasy jako string.
  • is_array — Sprawdza, czy podana wartość jest tablicą. Zwraca true tylko dla tablic — nie dla obiektów ani stringów.
  • is_bool — Sprawdza, czy podana wartość jest wartością logiczną (bool). Tylko true i false przechodzą ten test.
  • is_callable — Sprawdza, czy podana wartość może być wywołana jako funkcja: nazwa funkcji, domknięcie, tablica [obiekt, metoda] lub obiekt z __invoke.
  • is_countable — Sprawdza, czy wartość jest tablicą lub obiektem implementującym interfejs Countable, czyli czy można ją bezpiecznie przekazać do count().
  • is_dir — Sprawdza, czy podana ścieżka istnieje i jest katalogiem. Zwraca true lub false. Wyniki są buforowane przez clearstatcache().
  • is_file — Sprawdza, czy podana ścieżka istnieje i jest zwykłym plikiem (nie katalogiem). Zwraca true lub false.
  • is_finite — Sprawdza, czy podana wartość zmiennoprzecinkowa jest skończona (nie jest INF ani NAN).
  • is_float — Sprawdza, czy podana wartość jest liczbą zmiennoprzecinkową (float/double). Liczba całkowita 3 zwraca false.
  • is_int — Sprawdza, czy podana wartość jest liczbą całkowitą (int). String "42" zwraca false — typ ma znaczenie.
  • is_iterable — Sprawdza, czy wartość jest tablicą lub obiektem implementującym Traversable (np. ArrayIterator, Generator). Dodana w PHP 7.1.
  • is_nan — Sprawdza, czy podana wartość zmiennoprzecinkowa jest NAN (Not a Number).
  • is_null — Sprawdza, czy podana wartość jest null. Odpowiednik operatora === null, ale w formie funkcji.
  • is_numeric — Sprawdza, czy wartość jest liczbą lub numerycznym stringiem (np. "42", "3.14", "1e5"). Stringi szesnastkowe jak "0x1A" zwracają false od PHP 7.
  • is_object — Sprawdza, czy przekazana wartość jest obiektem. Zwraca false dla tablic, stringów, null i wszystkich typów skalarnych.
  • is_readable — Sprawdza, czy podany plik lub katalog istnieje i proces PHP ma uprawnienia do jego odczytu. Zwraca true lub false.
  • is_scalar — Sprawdza, czy wartość jest typem skalarnym: int, float, string lub bool. Zwraca false dla tablic, obiektów i null.
  • is_string — Sprawdza, czy podana wartość jest łańcuchem znaków (string). Zwraca false dla liczb, tablic i null.
  • is_subclass_of — Sprawdza, czy obiekt lub klasa jest podklasą lub implementuje podany interfejs. Zwraca true lub false.
  • isset — Sprawdza, czy zmienna lub klucz tablicy istnieje i nie ma wartości null. Nie generuje ostrzeżeń przy niezdefiniowanych zmiennych.
  • iterator_count — Zlicza elementy iteratora lub obiektu Traversable, przechodząc przez nie w pełni. Wynik to liczba całkowita.
  • iterator_to_array — Konwertuje obiekt Traversable (np. Generator, ArrayIterator, SplStack) na zwykłą tablicę PHP. Opcjonalnie zachowuje oryginalne klucze iteratora.
  • json_decode — Dekoduje ciąg JSON na wartość PHP. Drugi argument decyduje, czy wynik to tablica asocjacyjna czy obiekt stdClass.
  • json_encode — Koduje wartość PHP do formatu JSON. Zwraca ciąg znaków lub false w przypadku błędu.
  • json_last_error — Zwraca kod błędu ostatniej operacji json_encode lub json_decode. Zwraca 0 (JSON_ERROR_NONE) gdy nie było błędu.
  • json_last_error_msg — Zwraca tekstowy komunikat ostatniego błędu JSON. Gdy nie było błędu, zwraca 'No error'.
  • json_validate — Sprawdza czy string jest poprawnym JSON-em (PHP 8.3+). Szybsze od json_decode gdy nie potrzebujesz wartości.
  • key — Zwraca klucz elementu wskazywanego przez wewnętrzny wskaźnik tablicy lub null, gdy wskaźnik jest poza zakresem.
  • krsort — Sortuje tablicę malejąco według kluczy, zachowując powiązania klucz–wartość. Modyfikuje tablicę przez referencję.
  • ksort — Sortuje tablicę rosnąco według kluczy, zachowując powiązania klucz–wartość. Modyfikuje tablicę przez referencję.
  • lcfirst — Zamienia pierwszy znak ciągu na małą literę (tylko znaki ASCII).
  • levenshtein — Oblicza odległość edycyjną między dwoma ciągami — minimalną liczbę wstawień, usunięć i zamian znaków potrzebnych do przekształcenia jednego w drugi.
  • list — Rozkłada tablicę na zmienne w jednym przypisaniu. Nowoczesna składnia: [$a, $b] = $tablica.
  • locale_get_default — Zwraca identyfikator bieżącej domyślnej lokalizacji ICU (np. 'pl_PL'). Ustawiana przez Locale::setDefault() lub dyrektywę intl.default_locale.
  • localtime — Zwraca tablicę ze składowymi czasu lokalnego wzorowaną na strukturze tm z języka C, z indeksami liczbowymi lub nazwanymi.
  • log — Oblicza logarytm naturalny (podstawa e) lub logarytm o podanej podstawie.
  • log10 — Oblicza logarytm dziesiętny (podstawa 10) z podanej liczby.
  • ltrim — Usuwa białe znaki lub podane znaki z lewej strony łańcucha. Idealna do obcinania zbędnych spacji przed wartością z formularza.
  • max — Zwraca największą wartość spośród podanych argumentów lub elementów tablicy.
  • mb_check_encoding — Sprawdza, czy ciąg (lub tablica ciągów) jest prawidłowo zakodowany w podanym kodowaniu. Zwraca true lub false.
  • mb_chr — Zwraca znak odpowiadający podanemu Unicode code point w danym kodowaniu. Odwrotność mb_ord().
  • mb_convert_case — Zmienia wielkość liter w ciągu znaków z pełną obsługą Unicode, w tym polskich znaków (ą→Ą, ę→Ę itd.). Obsługuje tryby UPPER, LOWER i TITLE.
  • mb_convert_encoding — Konwertuje ciąg znaków z jednego kodowania na inne (np. z ISO-8859-2 na UTF-8). Niezbędna przy pracy ze starszymi plikami i bazami danych.
  • mb_convert_kana — Konwertuje między japonskimi alfabetami kana oraz pełnoszerokimi i półszerokimi znakami ASCII w kodowaniu wielobajtowym.
  • mb_detect_encoding — Próbuje wykryć kodowanie ciągu spośród podanej listy. Zwraca nazwę kodowania lub false. Działa heurystycznie.
  • mb_detect_order — Pobiera lub ustawia kolejność kodowań używanych przez mb_detect_encoding() do automatycznego wykrywania kodowania ciągu.
  • mb_internal_encoding — Pobiera lub ustawia domyślne kodowanie wewnętrzne używane przez funkcje mbstring, gdy nie podano jawnego $encoding.
  • mb_lcfirst — Zamienia pierwszy znak ciągu na małą literę, obsługując pełen zakres Unicode. Dostępna od PHP 8.4.
  • mb_ord — Zwraca Unicode code point (liczbę całkowitą) pierwszego znaku ciągu wielobajtowego. Odpowiednik ord() dla UTF-8.
  • mb_str_pad — Dopełnia ciąg do podanej długości znakami (nie bajtami). Wielobajtowy odpowiednik str_pad(). Dostępna od PHP 8.3.
  • mb_str_split — Dzieli ciąg wielobajtowy na tablicę znaków lub kawałków, poprawnie obsługując UTF-8.
  • mb_strcut — Wycina fragment ciągu według liczby bajtów, ale nigdy nie przetnie znaku wielobajtowego na pół.
  • mb_stripos — Zwraca pozycję pierwszego wystąpienia podciągu bez rozróżniania wielkości liter, licząc w znakach wielobajtowych.
  • mb_strlen — Zwraca liczbę ZNAKÓW w ciągu wielobajtowym (np. UTF-8). W odróżnieniu od strlen(), liczy znaki, nie bajty.
  • mb_strpos — Zwraca pozycję pierwszego wystąpienia podciągu w ciągu wielobajtowym, licząc w znakach, a nie w bajtach.
  • mb_strrpos — Zwraca pozycję ostatniego wystąpienia podciągu w ciągu wielobajtowym, licząc w znakach, nie w bajtach.
  • mb_strtolower — Zamienia wszystkie znaki ciągu na małe litery z obsługą wielobajtowych kodowań — działa poprawnie z polskimi znakami.
  • mb_strtoupper — Zamienia wszystkie znaki ciągu na wielkie litery z obsługą wielobajtowych kodowań — działa poprawnie z polskimi znakami.
  • mb_strwidth — Zwraca szerokość wyświetlania ciągu w kolumnach terminala. Znaki CJK (chiński, japoński, koreański) liczone jako 2.
  • mb_substr — Zwraca fragment ciągu wielobajtowego licząc znaki, nie bajty — bezpieczna alternatywa dla substr() przy polskich tekstach.
  • mb_substr_count — Zlicza liczbę wystąpień podciągu w ciągu wielobajtowym, liczy znaki poprawnie w UTF-8.
  • mb_trim — Usuwa białe znaki (lub podane znaki) z początku i końca ciągu wielobajtowego. Dostępna od PHP 8.4.
  • mb_ucfirst — Zamienia pierwszy znak ciągu na wielką literę, obsługując pełen zakres Unicode. Dostępna od PHP 8.4.
  • md5 — Oblicza skrót MD5 ciągu znaków (32 znaki hex). Służy do sum kontrolnych i cache keys — nigdy do haseł.
  • memory_get_usage — Zwraca liczbę bajtów pamięci używanej przez skrypt PHP. Opcjonalny parametr true zwraca rozmiar przydzielony przez system operacyjny.
  • method_exists — Sprawdza, czy dana metoda istnieje w klasie lub obiekcie. Przyjmuje obiekt lub nazwę klasy jako string — niezależnie od widoczności.
  • microtime — Zwraca bieżący czas Unix z dokładnością do mikrosekund. Przy argumencie true zwraca liczbę zmiennoprzecinkową.
  • mime_content_type — Wykrywa typ MIME pliku na podstawie jego zawartości (magic bytes) za pomocą rozszerzenia fileinfo.
  • min — Zwraca najmniejszą wartość spośród podanych argumentów lub elementów tablicy.
  • mkdir — Tworzy nowy katalog o podanej ścieżce i uprawnieniach. Zwraca true przy sukcesie, false przy błędzie.
  • mktime — Tworzy znacznik czasu Unix z podanych składowych daty i czasu: godziny, minuty, sekundy, miesiąca, dnia i roku.
  • mt_getrandmax — Zwraca największą możliwą wartość generowaną przez mt_rand(). Na większości platform to 2147483647.
  • mt_rand — Generuje pseudolosową liczbę całkowitą algorytmem Mersenne Twister. Nie nadaje się do kryptografii.
  • mt_srand — Inicjalizuje generator Mersenne Twister podanym ziarnem, gwarantując powtarzalną sekwencję wyników mt_rand().
  • natcasesort — Jak natsort, ale ignoruje wielkość liter przy porównaniu. Zachowuje oryginalne klucze i modyfikuje tablicę przez referencję.
  • natsort — Sortuje tablicę w naturalnym porządku (img2 przed img10), zachowując oryginalne klucze. Modyfikuje tablicę przez referencję.
  • next — Przesuwa wewnętrzny wskaźnik tablicy o jedną pozycję do przodu i zwraca wartość następnego elementu lub false.
  • nl2br — Wstawia znacznik HTML &lt;br /&gt; przed każdym znakiem nowej linii w ciągu.
  • number_format — Formatuje liczbę z separatorami dziesiętnym i tysięcy oraz zaokrągla do podanej liczby miejsc — przydatna do wyświetlania cen i kwot.
  • numfmt_create — Tworzy obiekt NumberFormatter formatujący liczby i waluty zgodnie z locale (np. 'pl_PL' → '1 234,56 zł'). Wymaga rozszerzenia intl.
  • numfmt_format — Formatuje liczbę całkowitą lub zmiennoprzecinkową do ciągu znaków zgodnie z ustawieniami lokalnymi obiektu NumberFormatter. Wymaga intl.
  • ob_end_clean — Usuwa zawartość aktywnego bufora wyjścia i zamyka go — dane bufora są bezpowrotnie kasowane, nic nie trafia do przeglądarki.
  • ob_get_clean — Zwraca zawartość aktywnego bufora wyjścia, a następnie go czyści i wyłącza. Skrót dla ob_get_contents() + ob_end_clean().
  • ob_get_contents — Zwraca zawartość aktywnego bufora wyjścia jako string — bez opróżniania ani zamykania bufora.
  • ob_get_length — Zwraca rozmiar (w bajtach) zawartości aktywnego bufora wyjścia. Zwraca false, gdy bufor nie jest aktywny.
  • ob_get_level — Zwraca liczbę aktywnych poziomów bufora wyjścia — 0 oznacza brak bufora, każde ob_start zwiększa wynik o 1.
  • ob_start — Włącza buforowanie wyjścia — wszystko co echo/print wyśle do przeglądarki trafia zamiast tego do bufora w pamięci.
  • ord — Zwraca wartość bajtu (0–255) pierwszego znaku łańcucha. Działa na pojedynczych bajtach — dla znaków UTF-8 użyj mb_ord.
  • pack — Pakuje wartości PHP do binarnego stringa według formatki. Używana przy protokołach binarnych i plikach.
  • parse_str — Parsuje ciąg zapytania URL (query string) i zapisuje wynik do podanej tablicy przez referencję. Odpowiednik $_GET dla własnych ciągów.
  • parse_url — Rozkłada URL na części: schemat, host, ścieżkę, query, fragment i inne. Zwraca tablicę asocjacyjną lub konkretny komponent.
  • password_hash — Hashuje hasło używając bcrypt lub argon2. Automatycznie generuje sól. Jedyna właściwa metoda przechowywania haseł w PHP — nigdy md5 ani sha1.
  • password_verify — Sprawdza czy podane hasło pasuje do hasha stworzonego przez password_hash. Zwraca true lub false. Porównanie jest timing-safe.
  • pathinfo — Rozkłada ścieżkę pliku na składowe: dirname, basename, extension, filename. Zwraca tablicę lub konkretny komponent.
  • php_sapi_name — Zwraca małymi literami nazwę interfejsu, przez który PHP jest uruchamiane, np. 'cli', 'fpm-fcgi', 'apache2handler'.
  • phpversion — Zwraca wersję PHP jako string (np. "8.5.7") lub wersję wskazanego rozszerzenia. Przydatna do diagnostyki środowiska.
  • pi — Zwraca przybliżoną wartość liczby π (pi) jako float.
  • pow — Podnosi liczbę do potęgi. Alternatywa dla operatora **.
  • preg_grep — Filtruje tablicę, zwracając tylko te elementy, które pasują do wzorca wyrażenia regularnego. Zachowuje oryginalne klucze tablicy.
  • preg_last_error — Zwraca kod błędu ostatniego wykonania wyrażenia regularnego PCRE. Przydatna do debugowania, gdy funkcje preg_* zwracają false lub nieoczekiwany wynik.
  • preg_match — Sprawdza, czy ciąg pasuje do wzorca wyrażenia regularnego. Zwraca 1 (dopasowanie), 0 (brak dopasowania) lub false (błąd wzorca).
  • preg_match_all — Wyszukuje wszystkie dopasowania wyrażenia regularnego w ciągu. Zwraca liczbę dopasowań i wypełnia tablicę $matches wszystkimi wynikami.
  • preg_quote — Poprzedza metaznaki wyrażeń regularnych ukośnikiem odwrotnym, dzięki czemu ciąg można bezpiecznie użyć jako literalny wzorzec.
  • preg_replace — Zastępuje fragmenty ciągu pasujące do wzorca wyrażenia regularnego podanym zamiennikiem.
  • preg_replace_callback — Zamienia dopasowania wyrażenia regularnego na wynik wywołania funkcji zwrotnej. Daje pełną kontrolę nad tym, czym zastąpić każde dopasowanie.
  • preg_split — Dzieli ciąg na tablicę według wzorca wyrażenia regularnego — elastyczniejsza wersja explode() dla złożonych separatorów.
  • prev — Cofa wewnętrzny wskaźnik tablicy o jedną pozycję i zwraca wartość poprzedniego elementu lub false.
  • print — Konstrukcja językowa wypisująca ciąg na wyjście. Zawsze zwraca 1, więc może być używana w wyrażeniach — w odróżnieniu od echo.
  • print_r — Wyświetla czytelną dla człowieka reprezentację zmiennej.
  • printf — Wypisuje sformatowany ciąg znaków na wyjście i zwraca liczbę wypisanych znaków. Działa jak sprintf, ale od razu drukuje wynik.
  • property_exists — Sprawdza, czy dana właściwość istnieje w klasie lub obiekcie — niezależnie od widoczności: public, protected lub private.
  • quotemeta — Poprzedza odwrotnym ukośnikiem znaki specjalne wyrażeń regularnych w ciągu znaków.
  • rad2deg — Przelicza kąt w radianach na stopnie. Odwrotność deg2rad — przydatna do prezentowania wyników trygonometrii.
  • rand — Generuje pseudolosową liczbę całkowitą z podanego zakresu. Nie nadaje się do kryptografii.
  • random_bytes — Generuje kryptograficznie bezpieczne losowe bajty z CSPRNG systemu operacyjnego. Używaj do tokenów CSRF, kluczy sesji i innych sekretów.
  • random_int — Generuje kryptograficznie bezpieczną losową liczbę całkowitą z podanego zakresu.
  • range — Tworzy tablicę zawierającą sekwencję liczb lub znaków od wartości startowej do końcowej z opcjonalnym krokiem.
  • rawurldecode — Dekoduje ciąg zakodowany metodą RFC 3986 — zamienia sekwencje %XX z powrotem na odpowiadające im znaki. Odwrotność rawurlencode.
  • rawurlencode — Koduje ciąg znaków zgodnie z RFC 3986 — spacje stają się %20, znaki specjalne są procentowo kodowane. Bezpieczne do osadzania w URL.
  • readfile — Wysyła zawartość pliku bezpośrednio na wyjście i zwraca liczbę zapisanych bajtów. Wydajna przy pobieraniu plików.
  • realpath — Rozwiązuje wszystkie dowiązania symboliczne i normalizuje ścieżkę do bezwzględnej. Zwraca string lub false gdy ścieżka nie istnieje.
  • register_shutdown_function — Rejestruje funkcję wywoływaną po zakończeniu skryptu — niezależnie od tego, czy skrypt zakończył się normalnie, czy przez błąd.
  • rename — Zmienia nazwę lub przenosi plik albo katalog. Działa też między katalogami na tym samym systemie plików. Zwraca bool.
  • reset — Przewija wewnętrzny wskaźnik tablicy na pierwszy element i zwraca jego wartość. Dla pustej tablicy zwraca false.
  • rewind — Przesuwa wskaźnik pozycji otwartego uchwytu pliku z powrotem na jego początek. Zwraca true przy sukcesie.
  • rmdir — Usuwa pusty katalog o podanej ścieżce. Zwraca true przy sukcesie, false gdy katalog nie istnieje, nie jest pusty lub brak uprawnień.
  • round — Zaokrągla liczbę zmiennoprzecinkową do podanej liczby miejsc po przecinku.
  • rsort — Sortuje tablicę malejąco według wartości i reindeksuje klucze numeryczne od zera. Modyfikuje tablicę przez referencję.
  • rtrim — Usuwa białe znaki lub podane znaki z prawej strony łańcucha. Bliźniacza funkcja ltrim, działa symetrycznie po drugiej stronie.
  • scandir — Zwraca posortowaną tablicę nazw plików i katalogów z podanego katalogu (łącznie z . i ..). Zwraca false przy błędzie.
  • serialize — Zamienia wartość PHP (tablicę, obiekt, skalary) na ciąg znaków reprezentujący jej strukturę, nadający się do zapisu lub przesłania.
  • session_destroy — Niszczy wszystkie dane powiązane z bieżącą sesją po stronie serwera. Wywoływana przy wylogowaniu, po wcześniejszym wyczyszczeniu tablicy $_SESSION.
  • session_regenerate_id — Generuje nowe ID sesji. Wywołaj po pomyślnym zalogowaniu, żeby zapobiec atakowi session fixation. Z argumentem true usuwa też stary plik sesji.
  • session_start — Rozpoczyna lub wznawia sesję HTTP. Musi być wywołana przed wysłaniem jakiegokolwiek wyjścia do przeglądarki. Umożliwia dostęp do $_SESSION.
  • set_error_handler — Rejestruje własną funkcję obsługi błędów PHP, zastępując domyślne zachowanie. Zwraca poprzedni handler lub null.
  • set_exception_handler — Rejestruje funkcję wywoływaną automatycznie, gdy wyjątek nie zostanie przechwycony przez żaden blok try/catch.
  • setcookie — Wysyła ciasteczko HTTP do przeglądarki. Musi być wywołana przed jakimkolwiek wyjściem. Ciasteczko jest dostępne w $_COOKIE od następnego żądania.
  • settype — Zmienia typ zmiennej w miejscu (przez referencję). Obsługuje: "int", "float", "string", "bool", "array", "object", "null".
  • sha1 — Oblicza skrót SHA-1 ciągu znaków (40 znaków hex). Służy do sum kontrolnych — nigdy do haseł i nie do podpisów cyfrowych.
  • shuffle — Miesza elementy tablicy w losowej kolejności, reindeksując klucze numeryczne od zera. Modyfikuje tablicę w miejscu.
  • similar_text — Oblicza liczbę wspólnych znaków dwóch ciągów. Opcjonalnie zwraca przez referencję procent podobieństwa. Kolejność argumentów wpływa na wynik.
  • sin — Zwraca sinus kąta podanego w radianach. Do przeliczenia stopni na radiany użyj deg2rad.
  • sleep — Wstrzymuje wykonanie skryptu na podaną liczbę sekund. Zwraca 0 po sukcesie lub liczbę pozostałych sekund po przerwaniu sygnałem.
  • sort — Sortuje tablicę rosnąco. Modyfikuje tablicę bezpośrednio (przez referencję) i reindeksuje klucze numeryczne od zera.
  • spl_autoload_register — Rejestruje funkcję autoloadera wywoływaną przez PHP, gdy klasa nie jest jeszcze załadowana. Mechanizm, który Composer automatyzuje dla PSR-4.
  • spl_object_hash — Zwraca unikalny string (32 znaki hex) identyfikujący obiekt przez cały czas jego życia. Hash może być ponownie użyty po zniszczeniu obiektu.
  • spl_object_id — Zwraca unikalny int będący identyfikatorem obiektu w danym procesie PHP. Id może być ponownie użyte po zniszczeniu obiektu.
  • sprintf — Formatuje ciąg znaków według wzorca i zwraca go jako string — odpowiednik printf, który zamiast wypisywać, zwraca wynik.
  • sqrt — Oblicza pierwiastek kwadratowy z liczby i zwraca wynik jako float.
  • srand — Inicjalizuje generator liczb pseudolosowych funkcji rand() podanym ziarnem, gwarantując powtarzalną sekwencję wyników.
  • sscanf — Parsuje ciąg według wzorca formatującego — odwrotność sprintf. Zwraca tablicę wartości lub liczbę przypisanych zmiennych.
  • str_contains — Sprawdza, czy ciąg zawiera podany podciąg; zwraca true lub false.
  • str_decrement — Dekrementuje alfanumeryczny ciąg znaków: 'b'→'a', 'Ba'→'Az', 'b0'→'a9'. Rzuca ValueError dla 'a', 'A' lub '0'.
  • str_ends_with — Sprawdza, czy ciąg kończy się podanym podciągiem; zwraca true lub false.
  • str_getcsv — Parsuje jeden wiersz CSV i zwraca tablicę pól. Obsługuje cudzysłowy i separatory — szybsza alternatywa fgetcsv przy danych już w pamięci.
  • str_increment — Inkrementuje alfanumeryczny ciąg znaków zgodnie z zasadami PHP: 'a'→'b', 'z'→'aa', 'Az'→'Ba', 'a9'→'b0'.
  • str_ireplace — Zamienia podciągi w stringu jak str_replace, ale bez rozróżniania wielkości liter.
  • str_pad — Uzupełnia ciąg do podanej długości wybranym znakiem wypełniającym z lewej, prawej lub obu stron.
  • str_repeat — Zwraca ciąg powtórzony podaną liczbę razy.
  • str_replace — Zamienia wszystkie wystąpienia szukanego ciągu na inny.
  • str_rot13 — Koduje lub dekoduje łańcuch algorytmem ROT13 (przesunięcie o 13 liter). Wywołana dwukrotnie na tym samym tekście przywraca oryginał.
  • str_split — Dzieli ciąg na tablicę fragmentów o podanej długości (domyślnie po jednym znaku).
  • str_starts_with — Sprawdza, czy ciąg zaczyna się od podanego podciągu; zwraca true lub false.
  • str_word_count — Zlicza słowa w ciągu lub zwraca je jako tablicę, opcjonalnie z pozycjami.
  • strcasecmp — Porównuje dwa ciągi znaków bez uwzględnienia wielkości liter (ASCII). Zwraca 0 gdy są równe, wartość ujemną lub dodatnią gdy różne.
  • strcmp — Porównuje dwa ciągi znaków binarnie. Zwraca 0 gdy są równe, wartość ujemną gdy pierwszy jest leksykograficznie mniejszy, dodatnią gdy większy.
  • strcspn — Zwraca długość początkowego fragmentu ciągu, który nie zawiera żadnego znaku z podanego zestawu.
  • strip_tags — Usuwa wszystkie tagi HTML i PHP z ciągu znaków. Opcjonalnie pozwala zachować wybrane tagi.
  • stripos — Zwraca pozycję pierwszego wystąpienia podciągu (bez uwzględnienia wielkości liter) lub false.
  • stripslashes — Usuwa ukośniki odwrotne dodane przez addslashes. Przywraca oryginalny łańcuch po wcześniejszym zescapowaniu cudzysłowów i apostrofów.
  • strlen — Zwraca długość ciągu znaków w bajtach.
  • strnatcasecmp — Porównuje dwa ciągi naturalnym porządkiem liczbowym bez rozróżniania wielkości liter (wariant strnatcmp).
  • strnatcmp — Porównuje dwa ciągi z uwzględnieniem naturalnego porządku liczb (np. 'img10' > 'img2'), z rozróżnianiem wielkości liter.
  • strncmp — Porównuje pierwsze n bajtów dwóch ciągów z uwzględnieniem wielkości liter. Przydatne do sprawdzania, czy ciąg zaczyna się od określonego prefiksu.
  • strpbrk — Zwraca podciąg zaczynający się od pierwszego znaku z podanego zestawu lub false, gdy żadnego nie znaleziono.
  • strpos — Zwraca pozycję pierwszego wystąpienia podciągu w ciągu lub false, gdy nie znaleziono.
  • strrchr — Zwraca część ciągu od ostatniego wystąpienia podanego znaku do końca lub false.
  • strrev — Odwraca kolejność znaków w ciągu bajtowo — dla UTF-8 z polskimi literami użyj własnej funkcji mb_.
  • strripos — Szuka ostatniego wystąpienia podciągu bez uwzględniania wielkości liter. Zwraca pozycję (int) lub false — sprawdzaj operatorem === false.
  • strrpos — Szuka ostatniego wystąpienia podciągu w łańcuchu. Zwraca pozycję (int) lub false — zawsze sprawdzaj operatorem === false.
  • strspn — Zwraca długość początkowego fragmentu ciągu złożonego wyłącznie ze znaków z podanego zestawu.
  • strstr — Zwraca część ciągu od pierwszego wystąpienia szukanego podciągu lub false, gdy go nie znajdzie.
  • strtolower — Zamienia wszystkie litery ciągu na małe (tylko znaki ASCII; do polskich liter użyj mb_strtolower).
  • strtotime — Parsuje tekstowy opis daty lub czasu i zwraca znacznik czasu Unix. Obsługuje daty bezwzględne i wyrażenia względne.
  • strtoupper — Zamienia wszystkie litery ciągu na wielkie.
  • strtr — Zamienia znaki lub podciągi w stringu według podanej mapy lub par from/to.
  • strval — Konwertuje wartość skalarną na string. true daje "1", false daje pusty string, liczby są zamieniane na tekstową reprezentację.
  • substr — Zwraca fragment ciągu znaków zaczynający się od podanej pozycji i o określonej długości.
  • substr_compare — Porównuje fragment ciągu haystack od podanego offsetu z ciągiem needle, opcjonalnie bez uwzględniania wielkości liter.
  • substr_count — Zlicza, ile razy podany podciąg występuje w głównym ciągu znaków.
  • substr_replace — Zastępuje część łańcucha innym tekstem, zaczynając od podanej pozycji. Bardziej elastyczna niż str_replace, gdy znasz dokładne miejsce zmiany.
  • sys_get_temp_dir — Zwraca ścieżkę do katalogu tymczasowego używanego przez system operacyjny lub ustawionego w php.ini (opcja sys_temp_dir).
  • tan — Zwraca tangens kąta podanego w radianach. Niezdefiniowany dla 90° i 270° — tam zwraca bardzo dużą liczbę.
  • tempnam — Tworzy unikalny plik tymczasowy w podanym katalogu i zwraca jego ścieżkę. Plik jest od razu pusty i gotowy do użycia.
  • time — Zwraca bieżący czas jako liczbę sekund od 1 stycznia 1970 roku 00:00:00 UTC (znacznik czasu Unix).
  • touch — Ustawia czas modyfikacji i dostępu pliku. Jeśli plik nie istnieje, tworzy go jako pusty. Zwraca true przy sukcesie.
  • trait_exists — Sprawdza, czy trait o podanej nazwie istnieje. Analogiczna do `class_exists`, ale zwraca `true` tylko dla traitów, nie dla klas ani interfejsów.
  • transliterator_transliterate — Konwertuje ciąg znaków według reguły transliteracji ICU (np. 'Latin-ASCII' usuwa akcenty: 'Łódź' → 'Lodz'). Wymaga rozszerzenia intl.
  • trigger_error — Generuje błąd użytkownika (E_USER_WARNING, E_USER_NOTICE, E_USER_DEPRECATED). Przydatne do własnego systemu raportowania.
  • trim — Usuwa białe znaki (spacje, tabulatory, nowe linie) z początku i końca łańcucha. Niezbędna przy czyszczeniu danych z formularzy.
  • uasort — Sortuje tablicę według wartości przy użyciu własnej funkcji porównującej. Zachowuje oryginalne klucze.
  • ucfirst — Zamienia pierwszy znak ciągu na wielką literę (tylko znaki ASCII).
  • ucwords — Zamienia pierwszy znak każdego wyrazu w ciągu na wielką literę.
  • uksort — Sortuje tablicę według kluczy przy użyciu własnej funkcji porównującej. Zachowuje powiązania klucz–wartość.
  • uniqid — Generuje unikalny identyfikator oparty na aktualnym czasie (mikrosekundy). Nie jest kryptograficznie bezpieczny — do plików tymczasowych, nie tokenów.
  • unlink — Usuwa plik o podanej ścieżce. Zwraca true przy sukcesie, false gdy plik nie istnieje lub brak uprawnień do usunięcia.
  • unpack — Rozpakowuje binarny string do tablicy wartości PHP według formatki. Odwrotność pack().
  • unserialize — Odtwarza wartość PHP z ciągu znaków utworzonego przez serialize(). Nigdy nie deserializuj danych z niezaufanych źródeł.
  • unset — Usuwa zmienną lub klucz tablicy z pamięci. Po wywołaniu zmienna przestaje istnieć — isset zwróci false.
  • urldecode — Dekoduje zakodowany URL-encoded string: zamienia + z powrotem na spację i sekwencje %XX na odpowiednie znaki.
  • urlencode — Koduje string do użycia jako wartość parametru w query stringu URL. Spacje zamienia na +, znaki specjalne na %XX.
  • usleep — Wstrzymuje wykonanie skryptu na podaną liczbę mikrosekund (1 sekunda = 1 000 000 mikrosekund).
  • usort — Sortuje tablicę według własnej funkcji porównującej. Reindeksuje klucze i modyfikuje tablicę przez referencję.
  • var_dump — Wyświetla szczegółowe informacje o typie i wartości zmiennej.
  • var_export — Wyświetla lub zwraca reprezentację zmiennej jako poprawny kod PHP. Przydatna do generowania konfiguracji i debugowania.
  • vfprintf — Jak fprintf, ale wartości przyjmuje jako tablicę zamiast listy argumentów. Zapisuje sformatowany ciąg do strumienia pliku.
  • vsprintf — Formatuje ciąg znaków według wzorca sprintf, ale wartości do wstawienia przekazuje jako tablicę zamiast listy oddzielnych argumentów.
  • wordwrap — Zawija tekst do podanej szerokości, wstawiając ciąg łamiący po wybranych słowach.