PHP Academy · Lektion

Fel- och undantagshantering

Hantera körtidsfel och undantag effektivt

Lektion 3 av 410 steg

Fel- och undantagshantering är en gratis lektion i PHP Academy på CoddyKit. Detta är lektion 3 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för PHP Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i PHP Academy innehåller totalt 4 lektioner.

Introduktion till felhantering

Fel- och undantagshantering

Välkomna till lektionen om fel- och undantagshantering! I den här lektionen lär ni er att hantera fel på ett smidigt sätt och använda undantag för att skapa mer tillförlitliga och lättunderhållna PHP-applikationer. Nu börjar vi!

Fel- och undantagshantering — illustration 1

Vad är fel och undantag?

Fel: Oväntade problem i koden som gör att den inte fungerar korrekt. Exempel är syntaxfel och odefinierade variabler.

Undantag: Särskilda objekt som representerar fel eller oväntade tillstånd i ett program. De kan fångas upp och hanteras utan att applikationen kraschar.

Viktig skillnad: Fel är vanligtvis fatala, medan undantag kan fångas upp och hanteras.

Typer av fel i PHP

PHP har flera typer av fel:

  • Parsefel: Syntaxfel som hindrar koden från att köras.
  • Fatala fel: Kod som PHP inte kan köra, till exempel ett anrop till en odefinierad funktion.
  • Varningsfel: Problem som inte stoppar skriptets körning men indikerar att något är fel.
  • Notisfel: Mindre problem, till exempel åtkomst till en odefinierad variabel.

Viktigt: Genom att förstå olika feltyper blir det enklare att felsöka och lösa problem effektivt.

Grundläggande felhantering

Använd PHP-funktionen error_reporting() för att styra vilka fel som visas. Exempel:

Tips: Använd ini_set() för att konfigurera inställningarna för felvisning dynamiskt.

<?php
  // Display all errors
  error_reporting(E_ALL);

  // Hide warnings
  error_reporting(E_ALL & ~E_WARNING);

  echo $undefinedVar; // This will trigger a Notice
?>

Anpassad felhantering

Skapa en anpassad felhanterarfunktion med hjälp av set_error_handler(). Exempel:

Viktigt: Anpassade felhanterare är användbara för loggning och anpassade felmeddelanden.

<?php
  function customErrorHandler($errno, $errstr, $errfile, $errline) {
    echo "Error [$errno]: $errstr in $errfile on line $errline<br>";
  }

  set_error_handler("customErrorHandler");

  echo $undefinedVar; // Triggers custom error handler
?>

Använda undantag

Undantag ger ett strukturerat sätt att hantera fel i PHP. Exempel:

Viktigt: Använd blocket try-catch för att hantera undantag på ett smidigt sätt.

<?php
  try {
    if (!file_exists("example.txt")) {
      throw new Exception("File not found.");
    }
  } catch (Exception $e) {
    echo "Caught exception: " . $e->getMessage();
  }
?>

Kasta undantag

Använd nyckelordet throw för att skapa undantag. Exempel:

Tips: Kasta undantag vid ogiltiga argument, saknade filer eller misslyckade databasanslutningar.

<?php
  function divide($a, $b) {
    if ($b == 0) {
      throw new Exception("Division by zero.");
    }
    return $a / $b;
  }

  try {
    echo divide(10, 0);
  } catch (Exception $e) {
    echo "Caught exception: " . $e->getMessage();
  }
?>

Logga fel

Logga fel i en fil med hjälp av error_log(). Exempel:

Viktigt: Genom att logga fel kan ni spåra problem i produktionsmiljöer utan att visa dem för användarna.

<?php
  error_log("An error occurred.", 3, "errors.log");

  echo "Error logged to file.";
?>

Bra jobbat!

Grattis! Ni har lärt er grunderna i fel- och undantagshantering i PHP, bland annat att hantera fel, skapa anpassade felhanterare och använda undantag för robust felhantering. I nästa lektion utforskar vi hur man arbetar med reguljära uttryck i PHP. Fortsätt att koda!

Fel- och undantagshantering — illustration 10
Gratis att börja

Lär dig PHP med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
49
Lektioner
195

Vanliga frågor

Är lektionen ”Fel- och undantagshantering” gratis?

Ja – hela texten till ”Fel- och undantagshantering” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i PHP Academy, kan Ni uppgradera till CoddyKit PRO. Kursen i PHP Academy innehåller totalt 4 lektioner.

Vad lär jag mig i ”Fel- och undantagshantering”?

Hantera körtidsfel och undantag effektivt Ni övar på PHP Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig PHP Academy?

Du behöver inga förkunskaper. Utbildningen i PHP Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 3 av 4.

Hur lång tid tar lektionen ”Fel- och undantagshantering”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här PHP Academy-lektionen?

Ja. Varje PHP Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Hantera sessioner och kakor
  2. Arbeta med filer
  3. Fel- och undantagshantering
  4. Använda reguljära uttryck
← Tillbaka till PHP Academy