Funkcje w PHP
Funkcje to, najprościej rzecz ujmując, fragmenty kodu, podprogramy, które wywołujemy w głównym programie za pomocą ich nazwy. Funkcja prawie zawsze przyjmuje jakieś argumenty, podawane w nawiasach. Tych podprogramów można używać w kodzie na takich samych zasadach, co innych wyrażeń, nawet stosować w innych funkcjach. Z parametrów funkcji możemy korzystać tak, jak z każdej zmiennej, choć naturalnie jesteśmy ograniczeni do wnętrza funkcji. Teoretycznie, bo są sposoby, żeby z wnętrza funkcji „dostać się” do innych zmiennych.
Funkcja nie musi koniecznie zwracać wartości. Dzieje się tak, jeśli dla większej ergonomii kodu PHP w funkcjach umieszczamy fragmenty często powtarzanego kodu. Wewnątrz funkcji mamy pełną swobodę -możemy umieścić w nich dowolny kod PHP. Istnieje możliwość definiowania w funkcjach innych funkcji i klas.
Nie możemy jednak w PHP definiować tej samej funkcji dwukrotnie, chociaż definicja może nastąpić w dowolnym fragmencie kodu. Do zwracania wyników funkcji służy komenda return.
Składnia funkcji – function
Nazwa funkcji nie może być taka sama, jak nazwa funkcji już istniejącej w PHP. Może zawierać jedynie litery, liczby i znak podkreślenia. Deklarujemy ją po słowie kluczowym function.
<?php
function PokazNapis()
{
echo 'Została wywołana funkcja’;
}
PokazNapis () ;
?>
<?php
function NAZWAFUNKCJI ()
{
TREŚĆ FUNKCJI
}
?>
Wywołania funkcji dokonujemy po prostu przez wpisanie jej nazwy, w rezultacie otrzymujemy wywołane przez nią polecenia, w naszym przypadku napis: Została wykonana funkcja
Parametry w funkcji -function
Funkcja może przyjąć dowolną liczbę parametrów, muszą być one oddzielone od siebie znakiem przecinka i znajdować się w nawiasach. Funkcja przyjmuje dwa parametry, które następnie zostają wyświetlone. W przypadku braku któregokolwiek z parametrów funkcja się nie wykona, a PHP zwróci nam informację o błędzie.
<?php
function
NAZWAFUNKCJI([PARAMETR,[PARAMETR…]])
{
TREŚĆ FUNKCJI
}
?>
<?php
function WypiszWKodzie ($Na*wa, $Łiteratura)
{
echo 'wydawnictwo: ’.$Nazwa;
eoho '<br />’ ;
echo 'Wydaja literaturę: ’ .$Literatura;
}
wypiezWKodzie(’ Ringier Axel Springer’ ,’ Informatyczną’) ;
?>