några sidor på nätet om PHP programmering

Sök efter  
Börja här Uppgifter Testa dig själv Tips Sidokarta mm. Länkar Sök

Loopar Felhantering

1.3.2 Felhantering

Det finns några olika metoder att hantera fel.

die

För enklare typer av fel kan man använda en PERL-liknande konstruktion:

<?php

    
# stänger av all felhantering
    
error_reporting  (0);

    
# detta kan lyckas - om inte visas ett felmedelande
    
$fp = fopen("enfil.txt", "r") OR die("OOPS. Kunde inte öppna filen");
?>
Listning 1.3.2.1 - samples/s22.php

OOPS. Kunde inte öppna filen
Resultat av listning 1.3.2.1

(Jag måste medge att jag tycker detta är en kul lösning. "Gör det eller DÖ". Inget tjafs där inte.. Man kan även använda ordet exit istället för die, men det är inte lika dramatiskt.)

error_reporting

Man kan ställa in olika nivåer av felhantering genom att använda error_reporting funktionen. Se nedan:

<?php

    
# stänger av all felhantering - ej rekommendabelt
    
error_reporting(0);
    echo
error_reporting() . "<br />";
    
    
# normal felhanteringsnivå - inte för noga och inte för slapp
    
error_reporting  (E_ERROR | E_WARNING | E_PARSE);
    echo
error_reporting() . "<br />";

    
# lämplig för utvecklingsmiljö
    
error_reporting (E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
    echo
error_reporting() . "<br />";

    
# alla fel och alla varningar - blir fort jobbig
    
error_reporting (E_ALL);
    
    echo
error_reporting() . "<br />";
?>
Listning 1.3.2.2 - samples/s23.php

0
7
15
2047
Resultat av listning 1.3.2.2

@

För enstaka rader kan man även använda @ som kopplar bort eventuella felmeddelande för den rad som börjar med detta tecken. Se exemplet på sidan "Specialare".

 

   Börja härKontrollsatserFelhantering