Weergave en interpretatie van PHP fouten
Voordat we daadwerkelijk kunnen beginnen met het toepassen van foutafhandeling is het van belang dat PHP ook daadwerkelijk fouten weergeeft. Om hiervoor te zorgen plaatsen we van nu af aan het volgende stukje code boven elk script:
De eerste regel zorgt ervoor dat de 'display_errors' instelling in php.ini aangezet wordt waardoor PHP fouten zal weergeven. De tweede regel zorgt ervoor dat alle mogelijke fouten die optreden worden weergegeven. Later in deze tutorial bespreek ik de mogelijke instellingen die je kunt doen.
Verschillende foutmeldingen
Er zijn verschillende foutmeldingen die PHP terug kan geven, maar de standaard foutmeldingen hebben altijd dezelfde syntax:
Mocht je nog niet bekend zijn met de foutmeldingen die PHP genereert, dan zal daar in de loop van deze tutorial zeker verandering in komen. Hetgeen voor nu belangrijk is, zijn de verschillende soorten fouten die op kunnen treden:
Parse error - Er zit een fout in de syntax van je php script
Notice - PHP heeft iets gevonden dat een fout zou kunnen zijn, maar niet per se is
Warning - Een belangrijke maar niet fatale fout. Het script wordt verder uitgevoerd
Fatal error - Een belangrijke en fatale fout. Het script wordt niet verder uitgevoerd
Om een en ander wat te verduidelijken volgt hier een scriptje dat een foutmelding zal geven:
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?php
ini_set('display_errors', 'On');
error_reporting(E_ALL);
echo 'Foo'
echo 'Bar';
?>
ini_set('display_errors', 'On');
error_reporting(E_ALL);
echo 'Foo'
echo 'Bar';
?>
De foutmelding die gegeven wordt is een 'parse error':
Code (php)
1
Parse error: syntax error, unexpected T_ECHO, expecting ',' or ';' in C:\wamp\www\test.php on line 6
Aan deze foutmelding zie je dat er op regel 6 in het bestand test.php iets fout gegaan is. PHP meldt dat de echo die op die regel staat niet verwacht wordt. Dat komt overduidelijk doordat de echo op regel 5 niet met een ; afgesloten wordt.
« vorige pagina | volgende pagina »
Inhoudsopgave
- Inleiding
- Weergave en interpretatie van PHP fouten
- Basis foutafhandeling met die()
- Een flexibelere manier: trigger_error()
- Foutafhandeling en controle van variabelen
- Een eigen foutafhandeling functie
- Exceptions in PHP 5
- Gedetailleerde foutinformatie verkrijgen
- Uitgebreide foutafhandeling met gebruik van foutco
- Uitbreiden van de standaard Exception klasse
- Slotwoord en referenties