SORU
12 Mart 2010, Cuma


O'imkansız __dan özel durum s neden olabilirdi()?

İmkansız __olabilirdi dan özel durum neden()?

class a
{
    public function __toString()
    {
        throw new Exception();
    }
}

$a = new a();
echo $a;

yukarıdaki kod bu üretir:

Fatal error: Method a::__toString() must not throw an exception in /var/www/localhost/htdocs/index.php on line 12

Bu davranış, açıklanan http://php.net/manual/en/migration52.incompatible.php işaret ettim, ama neden? Bunu yapmak için herhangi bir sebep?

Burada kimse bunu bilmiyor olabilir mi?

Her zamanki gibi php-dev-team şey diyor ama kılavuzu görmek tracker hata: http://bugs.php.net/50699

CEVAP
12 Mart 2010, Cuma


Birkaç aramadan sonra diyor ki this, buldum:

Johannes açıkladıbir özel durum dizesi için bir döküm sırasında atılan doğru Çalışabilir Motoru tarafından ele olacaktır emin olmak için bir yolu yokturbu Motorun büyük parçaları yeniden sürece değişmeyecek. Geçmişte bu tür konular hakkında tartışmalar olduğunu da sözlerine ekledi ve Guilherme arşivleri kontrol önerdi.

Johannes yukarıda başvurulan "" PHP bu şekilde davranır neden olarak bulabilirsiniz. bir açıklama resmi olarak muhtemelen bu yüzden PHP 5.3 Sürüm Yöneticisi,

Bu bölümde söz ediyor:

__toString(), garip trigger_error() kabul eder.

Yani tüm __toString() içinde hata raporlama açısından kayıp değildir.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 07cadikiz07

    07cadikiz07

    17 EKİM 2007
  • Best Quality Cartoons

    Best Quality

    10 ŞUBAT 2014
  • foreignimage

    foreignimage

    13 HAZİRAN 2006