364 of 410 menu

Komanda finally

Blok finally se koristi zajedno sa konstrukcijama try i catch za obradu izuzetaka. Kod unutar finally će se izvršiti u svakom slučaju - kako pri uspešnom izvršenju try-bloka, tako i pri pojavi izuzetka.

Sintaksa

try { // Kod koji može da izazove izuzetak } catch (Exception $e) { // Obrada izuzetka } finally { // Kod koji će se izvršiti u svakom slučaju }

Primer

Primer sa uspešnim izvršenjem koda:

<?php try { $res = 10 / 2; echo "Rezultat: " . $res . "\n"; } catch (Exception $e) { echo "Izuzetak: " . $e->getMessage() . "\n"; } finally { echo "Ovo će se uvek izvršiti\n"; } ?>

Rezultat izvršenja koda:

Rezultat: 5 Ovo će se uvek izvršiti

Primer

Primer sa obradom izuzetka:

<?php try { $res = 10 / 0; echo "Rezultat: " . $res . "\n"; } catch (Exception $e) { echo "Izuzetak: " . $e->getMessage() . "\n"; } finally { echo "Ovo će se uvek izvršiti\n"; } ?>

Rezultat izvršenja koda:

Izuzetak: Deljenje sa nulom Ovo će se uvek izvršiti

Primer

Korišćenje finally za oslobađanje resursa:

<?php $file = fopen("primer.txt", "r"); try { // Rad sa fajlom if ($file) { echo "Fajl je uspešno otvoren\n"; } } catch (Exception $e) { echo "Izuzetak: " . $e->getMessage() . "\n"; } finally { if ($file) { fclose($file); echo "Fajl je zatvoren u finally bloku\n"; } } ?>

Rezultat izvršenja koda:

Fajl je uspešno otvoren Fajl je zatvoren u finally bloku

Pogledajte takođe

  • konstrukciju try,
    koja se koristi za obradu izuzetaka
  • klasu Exception,
    koji je osnovna klasa za sve izuzetke
Srpski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Koristimo kolačiće za rad sajta, analitiku i personalizaciju. Obrada podataka se vrši u skladu sa Politikom privatnosti.
prihvati sve podesi odbij