login  Naam:   Wachtwoord: 
Registreer je!
 Tutorials

Tutorials > PHP


Gegevens:
Geschreven door:
Wijnand
Moeilijkheidsgraad:
Gemakkelijk
Hits:
27868
Punten:
Aantal punten:
 (3.52)
Aantal stemmen:
23
Stem:
Niet ingelogd
Nota's:
 Lees de nota's (7)
 


Tutorial:

Functies

Deze tutorial is verouderd.

1. Waarom zou je functies gebruiken?
2. Soorten functies
3. Werken met functies
4. Global




1. Waarom zou je functies gebruiken?

Functies kunnen heel handig zijn, zeker bij een grote website om de website ordelijk (netjes) te houden en om ervoor te zorgen dat je handelingen die je vaker moet verrichten (bv een bepaalde query) maar één keer hoef te schrijven, en deze overal kunt benaderen.


top
2. Soorten functies

Je hebt 3 verschillende soorten functies:
- Ingebouwde functies (deze functies zijn al geschreven in PHP zoals: IsSet(), echo(), mail()
- Zelf gemaakt functies (daar gaat deze tutorial over)
- Externe Bibliotheken (deze functies zijn functies die gemaakt zijn door een bepaalde programma. Voorbeelden zijn: mysql_connect(), mysql_query)


top
3. Werken met functies

Er zijn een paar dingen waar je goed op moet letten als je met functies gaat werken.
- Een functie moet altijd een naam hebben
- Een functie is hoofdletter-gevoelig. Dit betekend dus dat "Functie" en "functie" twee verschillende functies zijn.
- Een functie-naam moet altijd met een letter beginnen.

In het volgende voorbeeld geef ik een functie aan die geschreven is om twee waardes bij elkaar op te tellen.

Voorbeeld:
function optellen($getal1,$getal2)
{
    
$som = $getal1 + $getal2;
    return
$som;    
}

echo
optellen(1,3);
?>

In dit voorbeeld kun je duidelijk zien hoe een functie werkt. In de eerste regel geef je aan dat je een functie begint met de tekst ";function". Daarachter zet je de naam van een functie, gevolgd door de waardes die je wilt gebruiken in je tutorial. Deze waardes zijn variabele en de namen hiervan kun je zelf geven. Ik koos in dit voorbeeld voor $getal1 en $getal 2 omdat het dan duidelijk is dat het om getallen gaat. Verder worden de verschillende waardes gescheiden van elkaar door een komma.

Dan binnen de functie wordt de berekening gedaan. Daar is niet zoveel bijzonders aan maar de regel daaronder is wel belangrijk. Als je de berekening hebt gedaan dan is het natuurlijk logisch dat je de uitkomst wil laten zien. Daarvoor is de functie return. Die stuurt de een bepaalde waarde terug, in dit geval stuurt hij de waarde van "som" terug.

Als we nog een stukje verder naar onderen kijken zie je hoe je de functie moet weergeven. Eerst de echo (mag ook print() zijn) zodat je de waarde op je beeldscherm krijgt. Daarna de naam van de functie met daarin de 2 waardes aangegeven.

Stel nu dat je bij de laatste regel dit had neergezet:
Echo optellen("1"); dan komt er een foutmelding op het scherm. Deze foutmelding vertelt je dat je een waarde te weinig hebt opgegeven. Dit kan je op twee manieren oplossen.
1. je zet de waarde erbij in de echo
2. je geef in de functie aan dat als er bij getal2 geen waarde is opgegeven, dat deze een standaard waarde krijgt.

Deze laatste zal ik even uitleggen.

Voorbeeld:
function optellen($getal1,$getal2 = 1)
{
    
$som = $getal1 + $getal2;
    return
$som;    
}

echo
optellen(1);
echo
<br />;
echo
optellen(1,5);
?>

Je krijgt nu 2 getallen op het scherm. De eerste getal is 2. Dit komt dus omdat $getal2 de standaard waarde 1 krijgt (dus als er geen andere waarde is meegegeven).

Het tweede getal geeft 6 aan. Je geeft hier gewoon 2 waardes mee, dus er wordt niets gedaan met de “standaard waarde”.


top
Global

Het kan zijn dat je een variabele hebt die je graag in een functie wilt gebruiken. Als je deze gewoon toevoegt in de functie dan krijg je een foutmelding. Hier komt Global om de hoek kijken. Ik zal twee voorbeelden geven, eerst een fout voorbeeld die een error zal krijgen, en daarna een goed voorbeeld.

Voorbeeld:
$naam = "WiJnAnD";
function
naam()
{
    
$naam = strtolower($naam);
    
$naam = ucfirst($naam);
    return
$naam;    
}
echo
naam();
?>

In deze functie willen wij dat de naam "WiJnAnD" vervangen woord voor "Wijnand". Er gaat iets fout, want WiJnAnD wordt niet vervangen. In het volgende voorbeeld staat hoe je dit kunt afvangen.

Voorbeeld:
$naam = "WiJnAnD";
function
naam()
{
    global
$naam;
    
$naam = strtolower($naam);
    
$naam = ucfirst($naam);
    return
$naam;    
}
echo
naam();
?>

Hier staat global $naam bij, en nu werkt hij wel. Met Global zeg je eigenlijk dat er een variabele wordt gebruikt van buiten de functie.

The End

Mvg,
Wijnand
Dennis

top

« Vorige tutorial : Superglobals Volgende tutorial : Variabelen en veiligheid »

© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.013s