364 of 410 menu

Comando finally

O bloco finally é usado junto com as construções try e catch para tratamento de exceções. O código dentro do finally será executado em qualquer caso - tanto na execução bem-sucedida do bloco try quanto na ocorrência de uma exceção.

Sintaxe

try { // Código que pode causar uma exceção } catch (Exception $e) { // Tratamento da exceção } finally { // Código que será executado em qualquer caso }

Exemplo

Exemplo com execução bem-sucedida do código:

<?php try { $res = 10 / 2; echo "Result: " . $res . "\n"; } catch (Exception $e) { echo "Exception: " . $e->getMessage() . "\n"; } finally { echo "This will always execute\n"; } ?>

Resultado da execução do código:

Result: 5 This will always execute

Exemplo

Exemplo com tratamento de exceção:

<?php try { $res = 10 / 0; echo "Result: " . $res . "\n"; } catch (Exception $e) { echo "Exception: " . $e->getMessage() . "\n"; } finally { echo "This will always execute\n"; } ?>

Resultado da execução do código:

Exception: Division by zero This will always execute

Exemplo

Usando finally para liberar recursos:

<?php $file = fopen("example.txt", "r"); try { // Trabalhando com o arquivo if ($file) { echo "File opened successfully\n"; } } catch (Exception $e) { echo "Exception: " . $e->getMessage() . "\n"; } finally { if ($file) { fclose($file); echo "File closed in finally block\n"; } } ?>

Resultado da execução do código:

File opened successfully File closed in finally block

Veja também

  • a construção try,
    que é usada para tratamento de exceções
  • a classe Exception,
    que é a classe base para todas as exceções
Português
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nós usamos cookies para o funcionamento do site, análises e personalização. O processamento de dados é realizado de acordo com a Política de Privacidade.
aceitar todas configurar rejeitar