Autor podstrony: Krzysztof Zajączkowski

Stronę tą wyświetlono już: 3341 razy

W PHP do tworzenia funkcji konieczne było wprowadzenie słowa kluczowego function, ponieważ w PHP nie ma ścisłej kontroli typów. Funkcje w PHP mogą zwracać dane poprzez wartość w następujący sposób:

<?php function multiply($a, $b){ return $a * $b; } echo("Wynik " . multiply(10, 20)); ?>

Rezultat:

Wynik 200

Można też zwracać dane poprzez referencje:

<?php function multiply($a, $b, &$result){ return $a * $b; } $result = 0; multiply(10, 20, $result); echo("Wynik $result"); ?>

Oczywiście funkcja nie musi zwracać żadnej wartości, może też zwracać różne typy wartości w zależności od sytuacji, np. funkcja może zwrócić false, gdy się nie powiedzie lub jakiś wynik poprawnego jej działania.

W PHP trochę tak jak w Pythonie możliwe jest domyślne ustawianie parametrów funkcji:

<?php function multiply($a, $b = 0){ return $a * $b; } echo("<p>" . multiply(10) . "</p>"); echo("<p>" . multiply(10, 2) . "</p>"); ?>

Rezultat:

0

20

Taka konstrukcja jest konieczna z tego względu, że w PHP nie ma możliwości przeciążania funkcji jak ma to miejsce w C++. Wiąże się to z tym, że nie ma tutaj jawnej kontroli typów.