Netjes scripten

Het einde van deze tutorial begint in zicht te komen. Er zijn echter nog een paar zaken waaraan ik aandacht wil besteden. Deze laatste twee hoofdstukken zullen in het tekenstaan van de manier waarop je scripts op bouwt en het oplossen van fouten in een script aan de hand van foutmeldingen (debuggen).

Het netjes opbouwen van je PHP scripts is belangrijk. Allereerst omdat je zo het overzicht over je code behoudt. Vooral naarmate je code langer wordt, kan hij wel eens heel overzichtelijk worden als je niet op een nette manier script. Daarnaast zullen we zien dat het oplossen van fouten veel makkelijker wordt als je scripts netjes opgebouwd zijn.

Inspringen
Een eenvoudige methode om je code overzichtelijk te houden is door op vaste plaatsen en consequent in te springen. Kijk eens naar het volgende stukje code:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST'){
$aErrors = array();
$aData = array();
foreach($_POST as $sKey => $sValue){
$sValue = trim($sValue);
if(empty($sValue)){
$aErrors[] = 'Je bent vergeten om '.$sKey.' in te vullen';
}

$aData[$sKey] = $sValue;
}

if(empty($aErrors)){
echo '<p>Je hebt het formulier succesvol ingevuld! De volgende gegevens zijn bekend:</p>';
echo '<p>Voornaam: '.$aData['voornaam'].'<br />';
echo 'Achternaam: '.$aData['achternaam'].'</p>';
}
else{
header('Refresh: 3; url=formulier.php');
foreach($aErrors as $sError){
echo '<p style="color:red">'.$sError.'</p>';
}
}
}

?>

Dit is een werkend stukje code en als we goed kijken zien we dat dit een deel uit het verwerkingsscript van ons eerste formulier is. Alleen heb ik nu alle 'overbodig' tabs en enters uit het script gehaald. Vergelijk dit nu eens met de originele code:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST')
{

    // Arrays declareren voor opslag van fouten en data
    $aErrors = array();
    $aData = array();
    
    // Waarden uit de $_POST array doorlopen
    foreach($_POST as $sKey => $sValue)
    {

        // Spaties aan begin en eind weghalen
        $sValue = trim($sValue);
        
        // Controle of variabele gevuld is
        if(empty($sValue))
        {

            // Foutmelding toevoegen
            $aErrors[] = 'Je bent vergeten om '.$sKey.' in te vullen';
        }

        
        // Ingevulde waarden aan data array toevoegen
        $aData[$sKey] = $sValue;
    }

    
    // Controleren of er geen fouten opgetreden zijn
    if(empty($aErrors))
    {

        // Formulier succes!
        echo '<p>Je hebt het formulier succesvol ingevuld! De volgende gegevens zijn bekend:</p>';
        echo '<p>Voornaam: '.$aData['voornaam'].'<br />';
        echo 'Achternaam: '.$aData['achternaam'].'</p>';
    }

    else
    {
        // Fouten opgetreden: weergeven en terug naar formulier
        header('Refresh: 3; url=formulier.php');
        foreach($aErrors as $sError)
        {

            echo '<p style="color:red">'.$sError.'</p>';
        }
    }
}

?>

Volgens mij kun je niet anders dan het met me eens zijn, dat dit een stuk duidelijker en overzichtelijker is. Dit wordt voornamelijk veroorzaakt door het op een consequente manier inspringen. De manier die ik altijd gebruik is de volgende:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
if( statement )
{

    // Doe iets
    while( statement)
    {

        //Doe nog iets
    }
}

else
{
    // Doe iets anders
}
?>

Een andere standaard die ook veel gebruikt wordt is de volgende:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
if( statement ) {
    // Doe iets
    while( statement) {
        //Doe nog iets
    }
}
else {
    // Doe iets anders
}
?>

Deze methode is korter maar vind ik persoonlijk minder fijn werken. De keuze van de manier van inspringen is heel persoonlijk en je hoeft je ook niet per se aan een algemene standaard te houden. Het belangrijkste is dat je 1 methode kiest en die vervolgens consequent toepast.

Ook als je stukjes code kopieert (wat ik zelf ook regelmatig doe), verander dan de layout ervan naar je eigen methode, zodat de code netjes in de rest van je script pas.

Commentaar
Ik heb het al eerder in deze tutorial gezegd, maar het toevoegen van commentaar is ook belangrijk om het overzicht te behouden. Niet alleen voor anderen maar ook voor jezelf. Vooral als je code langer wordt is het belangrijk om commentaar toe te voegen aan de verschillende elementen in je code. Op die manier weten anderen en jijzelf later nog wat de functie van een bepaald onderdeel ook alweer was.

Zorg dat je commentaar op nuttige plaatsen toepast, te veel is namelijk ook niet goed. Ga dus niet aan elk if en else statementje een regel commentaar toevoegen als de functie ervan ook zonder commentaar duidelijk is. Dit zal er alleen maar voor zorgen dat je code weer onoverzichtelijker wordt, en dat moet je zien te voorkomen.

« Lees de omschrijving en reacties

Inhoudsopgave

  1. Inleiding
  2. Mijn eerste PHP script
  3. Variabelen
  4. Statements
  5. Loops
  6. Arrays
  7. Functies
  8. Formulieren
  9. Superglobals
  10. Sessies nader bekeken: een eerste loginscript
  11. Netjes scripten
  12. Debuggen: het oplossen van PHP fouten
  13. Slotwoord en referenties

PHP tutorial opties

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.