SORU
29 Mayıs 2009, Cuma


Nasıl PHP bir finally eksikliği etrafında alabilir miyim?

PHP sürümü için önce 5.5 sonunda en mantıklı dil, yapabileceğin ise - yani, Blok no:

try {
   //do something
} catch(Exception ex) {
   //handle an error
} finally {
   //clean up after yourself
}

PHP bir finally kavramı vardır.

Herkesin dilinde rahatsız edici bu delik için çözümler deneyime sahip mi?

CEVAP
29 Mayıs 2009, Cuma


Çözüm yok. Rahatsız edici hantal geçici çözüm, Evet

$stored_exc = null;
try {
    // Do stuff
} catch (Exception $exc) {
    $stored_exc = $exc;
    // Handle an error
}
// "Finally" here, clean up after yourself
if ($stored_exc) {
    throw($stored_exc);
}

İğrenç, ama çalışması gerekir.

Lütfen dikkat: PHP 5.5 nihayet (hmm, üzgünüm) eklenen bir finally bloğu: https://wiki.php.net/rfc/finally (ve sadece bir kaç yıl... mevcut 5.5 RC neredeyse dört yıl için tarihten beri yayınlanan bu cevap...)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • EvilControllers

    EvilControll

    20 Ocak 2008
  • njhaley

    njhaley

    24 NİSAN 2006
  • ThePointblank

    ThePointblan

    18 Aralık 2006